Changeset 18087
- Timestamp:
- 11/19/21 16:16:54 (2 years ago)
- Location:
- branches/2521_ProblemRefactoring
- Files:
-
- 4 deleted
- 50 edited
- 4 copied
Legend:
- Unmodified
- Added
- Removed
-
branches/2521_ProblemRefactoring
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/Build.ps1
r17226 r18087 140 140 [void][System.Console]::ReadKey($true) 141 141 } 142 143 # SIG # Begin signature block 144 # MIIRPwYJKoZIhvcNAQcCoIIRMDCCESwCAQExDzANBglghkgBZQMEAgEFADB5Bgor 145 # BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG 146 # KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCCkZQD98uHEu5cF 147 # pqVi6UDP5wAnkH38IHKlZIY9T9KjMqCCDo4wggbaMIIEwqADAgECAhNoAAE6ILAh 148 # JeBjaP8pAAEAATogMA0GCSqGSIb3DQEBCwUAMD4xEjAQBgoJkiaJk/IsZAEZFgJh 149 # dDEVMBMGCgmSJomT8ixkARkWBWZob29lMREwDwYDVQQDEwhGSE9PZUNBMTAeFw0x 150 # OTExMDYwOTI1NTJaFw0yNDExMDQwOTI1NTJaMD4xFjAUBgNVBAsTDUZ1RSBIYWdl 151 # bmJlcmcxJDAiBgNVBAMTG0ZIIE9PRSBTdHVkaWVuYmV0cmllYnMgR21iSDCCASIw 152 # DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANCook/YMdRq1PdL6DPB2ktDaZ5U 153 # 5+fP9EwD+fjS5CgpsSy8U54tFwKwAohaBl4SAsobOEDwTHFqn0g2SWrj/Kct+pAB 154 # a+1lFOFV6YsV5rj+ldPDpQde8bXO+XWTN/6+9zd//Xrxem6Zk1ObeDOrsOUr9PLT 155 # JIYAWN5Iwp2ziKmsgxBxJHx5FU7pTgB/RhZ2gqu+w5uPZEg8rtUQqwvaNREmIEGg 156 # XStODc1yLzcEx1VyWA1DUmdB6e4LLIh/NwYiOHrObdazS9IsI1DOD1jcTScBL5je 157 # CAZF+smlJGw6GJXztgRoU5d2IcpVwpzCOBbNfkuxwbJRrjGyp0kPFxWm5zECAwEA 158 # AaOCAs8wggLLMD0GCSsGAQQBgjcVBwQwMC4GJisGAQQBgjcVCIXvr0qBqfofgtGT 159 # A93ie4P1wUaBMoebr3KF1uNaAgFkAgEDMBMGA1UdJQQMMAoGCCsGAQUFBwMDMAsG 160 # A1UdDwQEAwIHgDAMBgNVHRMBAf8EAjAAMBsGCSsGAQQBgjcVCgQOMAwwCgYIKwYB 161 # BQUHAwMwHQYDVR0OBBYEFMi6j7BVQzhTjLBM6ivt63QrHvPuMB8GA1UdIwQYMBaA 162 # FOGlT0Cc05JYLnOIQcSeAsDFJDXFMIH1BgNVHR8Ege0wgeowgeeggeSggeGGgbBs 163 # ZGFwOi8vL0NOPUZIT09lQ0ExKDEpLENOPWZob29lY2ExLENOPUNEUCxDTj1QdWJs 164 # aWMlMjBLZXklMjBTZXJ2aWNlcyxDTj1TZXJ2aWNlcyxDTj1Db25maWd1cmF0aW9u 165 # LERDPWZob29lLERDPWF0P2NlcnRpZmljYXRlUmV2b2NhdGlvbkxpc3Q/YmFzZT9v 166 # YmplY3RDbGFzcz1jUkxEaXN0cmlidXRpb25Qb2ludIYsaHR0cDovL3BraS5zcnYu 167 # Zmgtb29lLmF0L3BraS9GSE9PZUNBMSgxKS5jcmwwggEDBggrBgEFBQcBAQSB9jCB 168 # 8zCBpAYIKwYBBQUHMAKGgZdsZGFwOi8vL0NOPUZIT09lQ0ExLENOPUFJQSxDTj1Q 169 # dWJsaWMlMjBLZXklMjBTZXJ2aWNlcyxDTj1TZXJ2aWNlcyxDTj1Db25maWd1cmF0 170 # aW9uLERDPWZob29lLERDPWF0P2NBQ2VydGlmaWNhdGU/YmFzZT9vYmplY3RDbGFz 171 # cz1jZXJ0aWZpY2F0aW9uQXV0aG9yaXR5MEoGCCsGAQUFBzAChj5odHRwOi8vcGtp 172 # LnNydi5maC1vb2UuYXQvcGtpL2Zob29lY2ExLmZob29lLmF0X0ZIT09lQ0ExKDEp 173 # LmNydDANBgkqhkiG9w0BAQsFAAOCAgEAO1g1XWnosz2Qrm2Qt6wruKNn/Cd1f/a2 174 # QZjtzCmTPLGWWFw/kX7hPwrjsfojZoMWT+17ogBB7LVLQG90DwzPVFtAmyPdIJ8/ 175 # tbu1nu+kRR6qyC3iPW8RZetjT5FAyxHSPNvyI1INXenHmShwkG1hjvjVOGiBECh3 176 # bfrY95qbZNdBpYee9xqEGlOj/LkRokM+hTlj65MgkFHGwPkiR6AZhnC6tVg3j2wX 177 # Y+0yaYiXc+iNWOLmQDVwxBmD5bEzToH7EoTsCNcxkatvNzwapdyyz8ycENqyVAGQ 178 # DxcEf2xNKZQU6PV1xJC8ltfpL4fL2MVQQ35VazMKGm+FeY5Jw+z7tph7Yxseb7KP 179 # wy4iKY9GAt7bEIJSSUNX0ni/MoWULsdU3EQDPedMS5v3I5C+7GfDJiThq+b2xSm3 180 # UIImrG+saST3hmC0fM3iffoujzn1tFm2POnNtIwL1X165quLCRhs4YHm57CxRcei 181 # LfETrOL3Qd08w1nJVnsEvppqe4NauzdO4jPbxsSFCse10xO/2TW1C/ugraXv1fSU 182 # HlYpUtt+wGhFV75QspOgUgWGc3KBMYm1XwjTWRwBZUd3l7S3UP6IqHaRu3I7eBsF 183 # OUArTCtXSK+szMW+1G1gIoT61ZyxemUjg9GuF7qIRwlt+Bax4Jy1aZ1TsmV0z1SS 184 # nBxuiKeBO1MwggesMIIFlKADAgECAhMeAAAABpSzaQpcq/lwAAEAAAAGMA0GCSqG 185 # SIb3DQEBCwUAMBcxFTATBgNVBAMTDEZIT09lUm9vdENBMTAeFw0xNTA1MDcxMjIy 186 # MzFaFw0yNzA1MDcxMjMyMzFaMD4xEjAQBgoJkiaJk/IsZAEZFgJhdDEVMBMGCgmS 187 # JomT8ixkARkWBWZob29lMREwDwYDVQQDEwhGSE9PZUNBMTCCAiIwDQYJKoZIhvcN 188 # AQEBBQADggIPADCCAgoCggIBAMA7PbbPxLUYOLUThQt0UWtwpT5rT1ZIRinD/wXG 189 # asjsvxTEsWDG6kf0tLyLlf64zNOhtXG5pbidu+rcmdnlut58h9So8QuZELdb8xbS 190 # 9rM3oTC9wKGW57oRydxIo7WkQwX/IZHefQf2X8AVp0Sb+kCvedUee1/GLIpfef1Y 191 # SvIxYURxI5xM7wcnRPPrWDWF+qvKe5miC8DiJ4+xAWqwbXwUUdIq9DUk9JL+2waq 192 # GfRodEpMZu/2KlYb6X4z9ZHFgq5OmW+g/WsvyZVQmuXuW0049yP6y79upgFitSrA 193 # VeJhEumheU58NC6VBAFvhyCwiR0R1brkpW5s5UP4A3nv1KsVTP12uU7kdWkqwhSa 194 # 6OMrga5H4ixHYLIpVqQ4j3K1qHNZfxBtVs5x6VhBhPOxT4uFTzFXiX1VZZK1bH2k 195 # K6jV0Hvyr/DzUNlwED2mZ8K7PwPbiDJyemvyvSeEvV/Nk12q8rSM308fVXy2Pkm5 196 # LuAxgNejOBNSmH828IR3Zd2TGgRYfGFklfNpAEOBNgz287/saMkNr/BqTrWFkuD8 197 # sevpa93bCo7OhWUgVNiVWjSdL/J3aj9cX3lu/M0nv06Mi1WdexUcstgxS8nY3ypP 198 # +WRbbmmll7+u/8udk+07Wm+DbQMQ9kS3ElnYgSCu93N/yVoR/lpGAdPkuns0lPHM 199 # ju3bAgMBAAGjggLIMIICxDASBgkrBgEEAYI3FQEEBQIDAQABMCMGCSsGAQQBgjcV 200 # AgQWBBR6W9jjcxJzbDG3JxXfKJnYNFE5gjAdBgNVHQ4EFgQU4aVPQJzTklguc4hB 201 # xJ4CwMUkNcUwGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwCwYDVR0PBAQDAgGG 202 # MBIGA1UdEwEB/wQIMAYBAf8CAQAwHwYDVR0jBBgwFoAUUam+2+0DBpS2t/5JT7W9 203 # I1iYA9YwggEBBgNVHR8EgfkwgfYwgfOggfCgge2GgbhsZGFwOi8vL0NOPUZIT09l 204 # Um9vdENBMSgxKSxDTj1maG9vZXJvb3RjYTEsQ049Q0RQLENOPVB1YmxpYyUyMEtl 205 # eSUyMFNlcnZpY2VzLENOPVNlcnZpY2VzLENOPUNvbmZpZ3VyYXRpb24sREM9Zmhv 206 # b2UsREM9YXQ/Y2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdD9iYXNlP29iamVjdENs 207 # YXNzPWNSTERpc3RyaWJ1dGlvblBvaW50hjBodHRwOi8vcGtpLnNydi5maC1vb2Uu 208 # YXQvcGtpL0ZIT09lUm9vdENBMSgxKS5jcmwwggEGBggrBgEFBQcBAQSB+TCB9jCB 209 # qAYIKwYBBQUHMAKGgZtsZGFwOi8vL0NOPUZIT09lUm9vdENBMSxDTj1BSUEsQ049 210 # UHVibGljJTIwS2V5JTIwU2VydmljZXMsQ049U2VydmljZXMsQ049Q29uZmlndXJh 211 # dGlvbixEQz1maG9vZSxEQz1hdD9jQUNlcnRpZmljYXRlP2Jhc2U/b2JqZWN0Q2xh 212 # c3M9Y2VydGlmaWNhdGlvbkF1dGhvcml0eTBJBggrBgEFBQcwAoY9aHR0cDovL3Br 213 # aS5zcnYuZmgtb29lLmF0L3BraS9maG9vZXJvb3RjYTFfRkhPT2VSb290Q0ExKDEp 214 # LmNydDANBgkqhkiG9w0BAQsFAAOCAgEAY3YxOVWln3QrOR5q01Uv7YHi0EI3dIIi 215 # qk0f1TW1694O/Q6Rm2vpBeP+jrZXLtyyivgBdx0Vc2UPjvjj5v/uImqjVvnUUCjU 216 # PYcV00UYT6pEzwXHu82rRwbaF8KreNzUIliJlrwG9sJ0TvnpNObsY0SwFElUhq/g 217 # cFRDJ38yVNPBOEDtKm+VlYF09LWs9xVw8JZk8K3xYSSlXy9sZQqTklFlL7dsb75h 218 # MYJEzohQgbr0mfwINEi52DcwU4D6IqPv6HABC3L5hcr9g1eSQ6HLPb0NjIWYaSHg 219 # ESWlRrhrM6nEygoAfIJMtUj0h7IUvV/FhkxpDHpcy4Y4mSOvc4F8uMJBSrn605IT 220 # rH1bdTXd4U3F89MOkWuJQD+JAiISzWeRCZNl9ID0fOM4Cn7bbO9wFZEpHgdoOaCM 221 # kcwi9SMQ2pzceTiyGshmMfT+Qd1haqUk2KX9ZlDms46rfGZj+RyB1IZg5nkYJ/hC 222 # /lgU+M4fWa1vrGJuYtSf0UwBd9qdP6MbWEtFTj0d0LCPOA5Pw7p2m1p3HEMI6mcX 223 # 4Fi+KO6CIvlX+SKrZwIattLO3VQZqV68/W3fmyC2FYwfVUU/InwIDGx3hXR3i+zr 224 # t41t11bnp8B4Bhq7PXKgUEHuX0gcNE0o62HstYOf/U5HkCM+Ag43gFrR/RDwMq6L 225 # 7VxKws52ao8xggIHMIICAwIBATBVMD4xEjAQBgoJkiaJk/IsZAEZFgJhdDEVMBMG 226 # CgmSJomT8ixkARkWBWZob29lMREwDwYDVQQDEwhGSE9PZUNBMQITaAABOiCwISXg 227 # Y2j/KQABAAE6IDANBglghkgBZQMEAgEFAKCBhDAYBgorBgEEAYI3AgEMMQowCKAC 228 # gAChAoAAMBkGCSqGSIb3DQEJAzEMBgorBgEEAYI3AgEEMBwGCisGAQQBgjcCAQsx 229 # DjAMBgorBgEEAYI3AgEVMC8GCSqGSIb3DQEJBDEiBCBkKJAeYkI5WqZCigil5oKN 230 # A/cYpXRiV+nHT9AINKF4HjANBgkqhkiG9w0BAQEFAASCAQCWxzzUAY2ruqDFVUHY 231 # Zzifh1dpYkpzIidbJIVAiAKvlql14/pqLSsZ64GS+qAph0F43FHYodilL50zydnp 232 # sv6WRC6GqE4ida5vwuWl22R7t4gZx5ZIG73HPySUzKawFigUZllT4CQfW7qEBf0g 233 # N42mOR0MnkGTsJiFQSpD98UHpiUaSNWSMAEsWeEiw0eVxiDOIQGTc62RtAPg4EUt 234 # fIOlbRUvQAgwC6yAdmqx0fA0ADAV0aO9c6h9jyf6kYA0TeAc8o/LtBtHULCLj5HT 235 # YllKIp7BZCLGQKVbKvmdxsdIGT8ajElKowM1MTGcLQYaGdzGTRgDNnTjzVsmV1Q7 236 # s7qn 237 # SIG # End signature block -
branches/2521_ProblemRefactoring/HeuristicLab.Algorithms.DataAnalysis
-
branches/2521_ProblemRefactoring/HeuristicLab.Algorithms.DataAnalysis.Views
- Property svn:mergeinfo changed
/branches/3105_PythonFormatter/HeuristicLab.Algorithms.DataAnalysis.Views (added) merged: 17918 /trunk/HeuristicLab.Algorithms.DataAnalysis.Views merged: 17816,17859,17922
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Algorithms.DataAnalysis/3.4
-
branches/2521_ProblemRefactoring/HeuristicLab.Algorithms.MOCMAEvolutionStrategy
- Property svn:mergeinfo changed
/trunk/HeuristicLab.Algorithms.MOCMAEvolutionStrategy merged: 17931
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Analysis
- Property svn:mergeinfo changed
/trunk/HeuristicLab.Analysis merged: 17931
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Analysis.Views
- Property svn:mergeinfo changed
/trunk/HeuristicLab.Analysis.Views merged: 17931
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Data.Views
- Property svn:mergeinfo changed
/trunk/HeuristicLab.Data.Views merged: 17840-17841,17921
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Data.Views/3.3
- Property svn:mergeinfo changed
/trunk/HeuristicLab.Data.Views/3.3 merged: 17840-17841,17921
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.DataPreprocessing
- Property svn:mergeinfo changed
/branches/3105_PythonFormatter/HeuristicLab.DataPreprocessing (added) merged: 17918 /trunk/HeuristicLab.DataPreprocessing merged: 17845,17922
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.DataPreprocessing/3.4
- Property svn:mergeinfo changed
/branches/3105_PythonFormatter/HeuristicLab.DataPreprocessing/3.4 (added) merged: 17918 /trunk/HeuristicLab.DataPreprocessing/3.4 merged: 17845,17922
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.ExtLibs
- Property svn:mergeinfo changed
/trunk/HeuristicLab.ExtLibs merged: 17634,17931,17941,18004,18023
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.ExtLibs.sln
r17514 r18087 67 67 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.EPPlus-4.0.3", "HeuristicLab.ExtLibs\HeuristicLab.EPPlus\4.0.3\HeuristicLab.EPPlus-4.0.3\HeuristicLab.EPPlus-4.0.3.csproj", "{675A6EE4-DE7C-413E-8BEF-EB21E0384C87}" 68 68 EndProject 69 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SimSharp-3.3. 1", "HeuristicLab.ExtLibs\HeuristicLab.SimSharp\3.3.1\SimSharp-3.3.1\SimSharp-3.3.1.csproj", "{9FE9C740-7859-4D01-AD07-7D4E15A6320B}"70 EndProject 71 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.SimSharp-3.3. 1", "HeuristicLab.ExtLibs\HeuristicLab.SimSharp\3.3.1\HeuristicLab.SimSharp-3.3.1\HeuristicLab.SimSharp-3.3.1.csproj", "{5C93CAF7-AE6A-4540-95B2-5DA6761A2677}"69 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SimSharp-3.3.2", "HeuristicLab.ExtLibs\HeuristicLab.SimSharp\3.3.2\SimSharp-3.3.2\SimSharp-3.3.2.csproj", "{4656EA72-9FDC-4D57-9491-D67089C260D0}" 70 EndProject 71 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.SimSharp-3.3.2", "HeuristicLab.ExtLibs\HeuristicLab.SimSharp\3.3.2\HeuristicLab.SimSharp-3.3.2\HeuristicLab.SimSharp-3.3.2.csproj", "{4C958A30-DB8A-47C7-9D70-6042C44C2502}" 72 72 EndProject 73 73 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.IGraph-0.8.0-pre", "HeuristicLab.ExtLibs\HeuristicLab.Igraph\0.8.0-pre\HeuristicLab.Igraph-0.8.0-pre\HeuristicLab.IGraph-0.8.0-pre.csproj", "{088D34F2-32EA-43FF-BAA8-22428D5B66BE}" … … 86 86 EndProject 87 87 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Protobuf", "HeuristicLab.ExtLibs\HeuristicLab.Protobuf\3.6.1\HeuristicLab.Protobuf.csproj", "{44B10478-D290-43D3-9757-C08F5292FEA5}" 88 EndProject 89 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.ALGLIB-3.17.0", "HeuristicLab.ExtLibs\HeuristicLab.ALGLIB\3.17.0\HeuristicLab.ALGLIB-3.17.0\HeuristicLab.ALGLIB-3.17.0.csproj", "{8A56F216-2B71-4F72-B86B-2DE489D578DB}" 90 EndProject 91 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ALGLIB-3.17.0", "HeuristicLab.ExtLibs\HeuristicLab.ALGLIB\3.17.0\ALGLIB-3.17.0\ALGLIB-3.17.0.csproj", "{A9CED8BA-9055-4DA6-A302-A4207C465AF0}" 88 92 EndProject 89 93 Global … … 445 449 {675A6EE4-DE7C-413E-8BEF-EB21E0384C87}.Release|x86.ActiveCfg = Release|x86 446 450 {675A6EE4-DE7C-413E-8BEF-EB21E0384C87}.Release|x86.Build.0 = Release|x86 447 { 9FE9C740-7859-4D01-AD07-7D4E15A6320B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU448 { 9FE9C740-7859-4D01-AD07-7D4E15A6320B}.Debug|Any CPU.Build.0 = Debug|Any CPU449 { 9FE9C740-7859-4D01-AD07-7D4E15A6320B}.Debug|x64.ActiveCfg = Debug|Any CPU450 { 9FE9C740-7859-4D01-AD07-7D4E15A6320B}.Debug|x64.Build.0 = Debug|Any CPU451 { 9FE9C740-7859-4D01-AD07-7D4E15A6320B}.Debug|x86.ActiveCfg = Debug|Any CPU452 { 9FE9C740-7859-4D01-AD07-7D4E15A6320B}.Debug|x86.Build.0 = Debug|Any CPU453 { 9FE9C740-7859-4D01-AD07-7D4E15A6320B}.Release|Any CPU.ActiveCfg = Release|Any CPU454 { 9FE9C740-7859-4D01-AD07-7D4E15A6320B}.Release|Any CPU.Build.0 = Release|Any CPU455 { 9FE9C740-7859-4D01-AD07-7D4E15A6320B}.Release|x64.ActiveCfg = Release|Any CPU456 { 9FE9C740-7859-4D01-AD07-7D4E15A6320B}.Release|x64.Build.0 = Release|Any CPU457 { 9FE9C740-7859-4D01-AD07-7D4E15A6320B}.Release|x86.ActiveCfg = Release|Any CPU458 { 9FE9C740-7859-4D01-AD07-7D4E15A6320B}.Release|x86.Build.0 = Release|Any CPU459 { 5C93CAF7-AE6A-4540-95B2-5DA6761A2677}.Debug|Any CPU.ActiveCfg = Debug|Any CPU460 { 5C93CAF7-AE6A-4540-95B2-5DA6761A2677}.Debug|Any CPU.Build.0 = Debug|Any CPU461 { 5C93CAF7-AE6A-4540-95B2-5DA6761A2677}.Debug|x64.ActiveCfg = Debug|x64462 { 5C93CAF7-AE6A-4540-95B2-5DA6761A2677}.Debug|x64.Build.0 = Debug|x64463 { 5C93CAF7-AE6A-4540-95B2-5DA6761A2677}.Debug|x86.ActiveCfg = Debug|x86464 { 5C93CAF7-AE6A-4540-95B2-5DA6761A2677}.Debug|x86.Build.0 = Debug|x86465 { 5C93CAF7-AE6A-4540-95B2-5DA6761A2677}.Release|Any CPU.ActiveCfg = Release|Any CPU466 { 5C93CAF7-AE6A-4540-95B2-5DA6761A2677}.Release|Any CPU.Build.0 = Release|Any CPU467 { 5C93CAF7-AE6A-4540-95B2-5DA6761A2677}.Release|x64.ActiveCfg = Release|x64468 { 5C93CAF7-AE6A-4540-95B2-5DA6761A2677}.Release|x64.Build.0 = Release|x64469 { 5C93CAF7-AE6A-4540-95B2-5DA6761A2677}.Release|x86.ActiveCfg = Release|x86470 { 5C93CAF7-AE6A-4540-95B2-5DA6761A2677}.Release|x86.Build.0 = Release|x86451 {4656EA72-9FDC-4D57-9491-D67089C260D0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 452 {4656EA72-9FDC-4D57-9491-D67089C260D0}.Debug|Any CPU.Build.0 = Debug|Any CPU 453 {4656EA72-9FDC-4D57-9491-D67089C260D0}.Debug|x64.ActiveCfg = Debug|Any CPU 454 {4656EA72-9FDC-4D57-9491-D67089C260D0}.Debug|x64.Build.0 = Debug|Any CPU 455 {4656EA72-9FDC-4D57-9491-D67089C260D0}.Debug|x86.ActiveCfg = Debug|Any CPU 456 {4656EA72-9FDC-4D57-9491-D67089C260D0}.Debug|x86.Build.0 = Debug|Any CPU 457 {4656EA72-9FDC-4D57-9491-D67089C260D0}.Release|Any CPU.ActiveCfg = Release|Any CPU 458 {4656EA72-9FDC-4D57-9491-D67089C260D0}.Release|Any CPU.Build.0 = Release|Any CPU 459 {4656EA72-9FDC-4D57-9491-D67089C260D0}.Release|x64.ActiveCfg = Release|Any CPU 460 {4656EA72-9FDC-4D57-9491-D67089C260D0}.Release|x64.Build.0 = Release|Any CPU 461 {4656EA72-9FDC-4D57-9491-D67089C260D0}.Release|x86.ActiveCfg = Release|Any CPU 462 {4656EA72-9FDC-4D57-9491-D67089C260D0}.Release|x86.Build.0 = Release|Any CPU 463 {4C958A30-DB8A-47C7-9D70-6042C44C2502}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 464 {4C958A30-DB8A-47C7-9D70-6042C44C2502}.Debug|Any CPU.Build.0 = Debug|Any CPU 465 {4C958A30-DB8A-47C7-9D70-6042C44C2502}.Debug|x64.ActiveCfg = Debug|x64 466 {4C958A30-DB8A-47C7-9D70-6042C44C2502}.Debug|x64.Build.0 = Debug|x64 467 {4C958A30-DB8A-47C7-9D70-6042C44C2502}.Debug|x86.ActiveCfg = Debug|x86 468 {4C958A30-DB8A-47C7-9D70-6042C44C2502}.Debug|x86.Build.0 = Debug|x86 469 {4C958A30-DB8A-47C7-9D70-6042C44C2502}.Release|Any CPU.ActiveCfg = Release|Any CPU 470 {4C958A30-DB8A-47C7-9D70-6042C44C2502}.Release|Any CPU.Build.0 = Release|Any CPU 471 {4C958A30-DB8A-47C7-9D70-6042C44C2502}.Release|x64.ActiveCfg = Release|x64 472 {4C958A30-DB8A-47C7-9D70-6042C44C2502}.Release|x64.Build.0 = Release|x64 473 {4C958A30-DB8A-47C7-9D70-6042C44C2502}.Release|x86.ActiveCfg = Release|x86 474 {4C958A30-DB8A-47C7-9D70-6042C44C2502}.Release|x86.Build.0 = Release|x86 471 475 {088D34F2-32EA-43FF-BAA8-22428D5B66BE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 472 476 {088D34F2-32EA-43FF-BAA8-22428D5B66BE}.Debug|Any CPU.Build.0 = Debug|Any CPU … … 561 565 {44B10478-D290-43D3-9757-C08F5292FEA5}.Release|x86.ActiveCfg = Release|Any CPU 562 566 {44B10478-D290-43D3-9757-C08F5292FEA5}.Release|x86.Build.0 = Release|Any CPU 567 {8A56F216-2B71-4F72-B86B-2DE489D578DB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 568 {8A56F216-2B71-4F72-B86B-2DE489D578DB}.Debug|Any CPU.Build.0 = Debug|Any CPU 569 {8A56F216-2B71-4F72-B86B-2DE489D578DB}.Debug|x64.ActiveCfg = Debug|Any CPU 570 {8A56F216-2B71-4F72-B86B-2DE489D578DB}.Debug|x64.Build.0 = Debug|Any CPU 571 {8A56F216-2B71-4F72-B86B-2DE489D578DB}.Debug|x86.ActiveCfg = Debug|Any CPU 572 {8A56F216-2B71-4F72-B86B-2DE489D578DB}.Debug|x86.Build.0 = Debug|Any CPU 573 {8A56F216-2B71-4F72-B86B-2DE489D578DB}.Release|Any CPU.ActiveCfg = Release|Any CPU 574 {8A56F216-2B71-4F72-B86B-2DE489D578DB}.Release|Any CPU.Build.0 = Release|Any CPU 575 {8A56F216-2B71-4F72-B86B-2DE489D578DB}.Release|x64.ActiveCfg = Release|Any CPU 576 {8A56F216-2B71-4F72-B86B-2DE489D578DB}.Release|x64.Build.0 = Release|Any CPU 577 {8A56F216-2B71-4F72-B86B-2DE489D578DB}.Release|x86.ActiveCfg = Release|Any CPU 578 {8A56F216-2B71-4F72-B86B-2DE489D578DB}.Release|x86.Build.0 = Release|Any CPU 579 {A9CED8BA-9055-4DA6-A302-A4207C465AF0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 580 {A9CED8BA-9055-4DA6-A302-A4207C465AF0}.Debug|Any CPU.Build.0 = Debug|Any CPU 581 {A9CED8BA-9055-4DA6-A302-A4207C465AF0}.Debug|x64.ActiveCfg = Debug|Any CPU 582 {A9CED8BA-9055-4DA6-A302-A4207C465AF0}.Debug|x64.Build.0 = Debug|Any CPU 583 {A9CED8BA-9055-4DA6-A302-A4207C465AF0}.Debug|x86.ActiveCfg = Debug|Any CPU 584 {A9CED8BA-9055-4DA6-A302-A4207C465AF0}.Debug|x86.Build.0 = Debug|Any CPU 585 {A9CED8BA-9055-4DA6-A302-A4207C465AF0}.Release|Any CPU.ActiveCfg = Release|Any CPU 586 {A9CED8BA-9055-4DA6-A302-A4207C465AF0}.Release|Any CPU.Build.0 = Release|Any CPU 587 {A9CED8BA-9055-4DA6-A302-A4207C465AF0}.Release|x64.ActiveCfg = Release|Any CPU 588 {A9CED8BA-9055-4DA6-A302-A4207C465AF0}.Release|x64.Build.0 = Release|Any CPU 589 {A9CED8BA-9055-4DA6-A302-A4207C465AF0}.Release|x86.ActiveCfg = Release|Any CPU 590 {A9CED8BA-9055-4DA6-A302-A4207C465AF0}.Release|x86.Build.0 = Release|Any CPU 563 591 EndGlobalSection 564 592 GlobalSection(SolutionProperties) = preSolution -
branches/2521_ProblemRefactoring/HeuristicLab.ExtLibs/HeuristicLab.Attic/1.0.0/HeuristicLab.Attic.csproj
r17226 r18087 61 61 <ItemGroup> 62 62 <PackageReference Include="HEAL.Attic"> 63 <Version>1. 4.0</Version>63 <Version>1.5.0</Version> 64 64 </PackageReference> 65 65 </ItemGroup> -
branches/2521_ProblemRefactoring/HeuristicLab.ExtLibs/HeuristicLab.NativeInterpreter/0.1/HeuristicLab.NativeInterpreter-0.1/Plugin.cs
r17226 r18087 23 23 24 24 namespace HeuristicLab.Problems.DataAnalysis.Symbolic { 25 [Plugin("HeuristicLab.NativeInterpreter", "Provides a native (C++) interpreter for symbolic expression trees", "0. 0.0.1")]25 [Plugin("HeuristicLab.NativeInterpreter", "Provides a native (C++) interpreter for symbolic expression trees", "0.1.0.0")] 26 26 [PluginFile("HeuristicLab.Problems.DataAnalysis.Symbolic.NativeInterpreter-0.1.dll", PluginFileType.Assembly)] 27 27 [PluginFile("hl-native-interpreter-msvc-x86.dll", PluginFileType.NativeDll)] -
branches/2521_ProblemRefactoring/HeuristicLab.ExtLibs/HeuristicLab.OrTools/7.0.0/HeuristicLab.OrTools-7.0.0/HeuristicLab.OrTools-7.0.0.csproj
r16944 r18087 82 82 </PropertyGroup> 83 83 <ItemGroup> 84 <Reference Include="HeuristicLab.PluginInfrastructure-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">85 <SpecificVersion>False</SpecificVersion>86 <HintPath>..\..\..\..\bin\HeuristicLab.PluginInfrastructure-3.3.dll</HintPath>87 </Reference>88 84 <Reference Include="System" /> 89 85 <Reference Include="System.Core" /> … … 93 89 <Reference Include="System.Data" /> 94 90 <Reference Include="System.Xml" /> 91 </ItemGroup> 92 <ItemGroup> 93 <ProjectReference Include="..\..\..\..\HeuristicLab.PluginInfrastructure\3.3\HeuristicLab.PluginInfrastructure-3.3.csproj"> 94 <Project>{94186A6A-5176-4402-AE83-886557B53CCA}</Project> 95 <Name>HeuristicLab.PluginInfrastructure-3.3</Name> 96 <Private>False</Private> 97 </ProjectReference> 95 98 </ItemGroup> 96 99 <ItemGroup> -
branches/2521_ProblemRefactoring/HeuristicLab.Optimizer
- Property svn:mergeinfo changed
/trunk/HeuristicLab.Optimizer merged: 17931,17942,17964
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Problems.DataAnalysis
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Problems.DataAnalysis.Symbolic
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification
- Property svn:mergeinfo changed
/trunk/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification merged: 17931
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views
- Property svn:mergeinfo changed
/trunk/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views merged: 17835
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views
- Property svn:mergeinfo changed
/trunk/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views merged: 17976
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.TimeSeriesPrognosis
- Property svn:mergeinfo changed
/trunk/HeuristicLab.Problems.DataAnalysis.Symbolic.TimeSeriesPrognosis merged: 17931
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Views
- Property svn:mergeinfo changed
/trunk/HeuristicLab.Problems.DataAnalysis.Symbolic.Views merged: 17931
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Problems.DataAnalysis.Views
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Problems.DataAnalysis/3.4
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Problems.Instances.DataAnalysis
- Property svn:mergeinfo changed
/trunk/HeuristicLab.Problems.Instances.DataAnalysis merged: 17682,17684,17804-17805,17931,17966-17967,17969,17973-17974,18032
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Problems.Instances.DataAnalysis.Views
- Property svn:mergeinfo changed
/trunk/HeuristicLab.Problems.Instances.DataAnalysis.Views merged: 17646
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Random
- Property svn:mergeinfo changed
/branches/3027-NormalDistribution/HeuristicLab.Random (added) merged: 17244-17245 /trunk/HeuristicLab.Random merged: 17806,17810
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Tests
- Property svn:mergeinfo changed
-
branches/2521_ProblemRefactoring/HeuristicLab.Tests/HeuristicLab-3.3/PluginDependenciesTest.cs
r17226 r18087 34 34 private static Dictionary<Assembly, Type> loadedPlugins; 35 35 private static Dictionary<string, string> pluginNames; 36 private static Dictionary<string, Version> pluginVersions; 36 37 private static Dictionary<string, Assembly> pluginFilesToPluginLookup = new Dictionary<string, Assembly>(); 37 38 … … 39 40 [ClassInitialize] 40 41 public static void MyClassInitialize(TestContext testContext) { 41 loadedPlugins = PluginLoader.Assemblies.Where(PluginLoader.IsPluginAssembly).ToDictionary(a => a, GetPluginFromAssembly); 42 try { 43 loadedPlugins = PluginLoader.Assemblies.Where(PluginLoader.IsPluginAssembly).ToDictionary(a => a, GetPluginFromAssembly); 44 } catch (BadImageFormatException e) { 45 var message = string.Join(Environment.NewLine, "Could not load all types. Check if test process architecture is set to x64.", string.Empty, "Exception:", e); 46 Assert.Fail(message); 47 } 48 42 49 pluginNames = loadedPlugins.ToDictionary(a => a.Key.GetName().FullName, a => GetPluginName(a.Value)); 50 pluginVersions = loadedPlugins.ToDictionary(a => a.Key.GetName().FullName, a => GetPluginVersion(a.Value)); 43 51 44 52 foreach (Assembly pluginAssembly in loadedPlugins.Keys) { … … 65 73 var referencedAssemblies = pluginAssemblies.SelectMany(a => a.GetReferencedAssemblies()).ToList(); 66 74 67 Dictionary<string, PluginDependencyAttribute> pluginDependencies = Attribute.GetCustomAttributes(plugin, false).OfType<PluginDependencyAttribute>().ToDictionary(a => a.Dependency); 75 var pluginDependencies = Attribute.GetCustomAttributes(plugin, false).OfType<PluginDependencyAttribute>().ToArray(); 76 77 bool versionLessThan(Version a, Version b) => a.Major < b.Major || ((a.Major == b.Major) && (a.Minor <= b.Minor)); 78 79 bool compatiblePluginAvailable(string referencedAssemblyName) => pluginDependencies.Any(pd => pd.Dependency == pluginNames[referencedAssemblyName] && versionLessThan(pd.Version, pluginVersions[referencedAssemblyName])); 68 80 69 81 foreach (AssemblyName referencedAssemblyName in referencedAssemblies) { 70 82 if (IsPluginAssemblyName(referencedAssemblyName)) { 71 if (! pluginDependencies.ContainsKey(pluginNames[referencedAssemblyName.FullName]))72 errorMessage.AppendLine("Missing dependency in plugin " + plugin + " to referenced plugin " + pluginNames[referencedAssemblyName.FullName] + " .");83 if (!compatiblePluginAvailable(referencedAssemblyName.FullName)) 84 errorMessage.AppendLine("Missing dependency in plugin " + plugin + " to referenced plugin " + pluginNames[referencedAssemblyName.FullName] + " in version >= " + pluginVersions[referencedAssemblyName.FullName] + "."); 73 85 } else { //no plugin assembly => test if the assembly is delivered by another plugin 74 86 if (pluginFilesToPluginLookup.ContainsKey(referencedAssemblyName.Name)) { 75 87 string containingPluginFullName = pluginFilesToPluginLookup[referencedAssemblyName.Name].FullName; 76 if (containingPluginFullName != pluginAssembly.FullName && ! pluginDependencies.ContainsKey(pluginNames[containingPluginFullName]))77 errorMessage.AppendLine("Missing dependency in plugin " + plugin + " to plugin " + pluginNames[containingPluginFullName] + " due to a reference to " + referencedAssemblyName.FullName + ".");88 if (containingPluginFullName != pluginAssembly.FullName && !compatiblePluginAvailable(containingPluginFullName)) 89 errorMessage.AppendLine("Missing dependency in plugin " + plugin + " to plugin " + pluginNames[containingPluginFullName] + " in version >= " + pluginVersions[containingPluginFullName] + " due to a reference to " + referencedAssemblyName.FullName + "."); 78 90 } 79 91 } … … 130 142 } 131 143 144 private static Version GetPluginVersion(Type plugin) { 145 var version = new Version(); 146 PluginAttribute pluginAttribute = (PluginAttribute)Attribute.GetCustomAttribute(plugin, typeof(PluginAttribute)); 147 if (pluginAttribute != null) { 148 version = pluginAttribute.Version; 149 } 150 return version; 151 } 152 132 153 private static bool IsPluginAssemblyName(AssemblyName assemblyName) { 133 154 return pluginNames.ContainsKey(assemblyName.FullName); -
branches/2521_ProblemRefactoring/HeuristicLab.Tests/HeuristicLab-3.3/Samples/GPSymbolicRegressionSampleWithOSTest.cs
r17695 r18087 69 69 // been able to identify the real cause. Presumably, execution on a Xeon and a Core i7 processor 70 70 // leads to different results. 71 Assert.AreEqual(0.99 174959007940156, SamplesUtils.GetDoubleResult(osga, "BestQuality"), 1E-8, Environment.NewLine + "Best Quality differs.");72 Assert.AreEqual(0.9 836083751914968, SamplesUtils.GetDoubleResult(osga, "CurrentAverageQuality"), 1E-8, Environment.NewLine + "Current Average Quality differs.");73 Assert.AreEqual(0. 98298394717065463, SamplesUtils.GetDoubleResult(osga, "CurrentWorstQuality"), 1E-8, Environment.NewLine + "Current Worst Quality differs.");74 Assert.AreEqual(10 100, SamplesUtils.GetIntResult(osga, "EvaluatedSolutions"), Environment.NewLine + "Evaluated Solutions differ.");75 Assert.AreEqual(0.99 174959007940156, bestTrainingSolution.TrainingRSquared, 1E-8, Environment.NewLine + "Best Training Solution Training R² differs.");76 Assert.AreEqual(0. 8962902319942232, bestTrainingSolution.TestRSquared, 1E-8, Environment.NewLine + "Best Training Solution Test R² differs.");71 Assert.AreEqual(0.996270926227739, SamplesUtils.GetDoubleResult(osga, "BestQuality"), 1E-8, Environment.NewLine + "Best Quality differs."); 72 Assert.AreEqual(0.95742113235788184, SamplesUtils.GetDoubleResult(osga, "CurrentAverageQuality"), 1E-8, Environment.NewLine + "Current Average Quality differs."); 73 Assert.AreEqual(0.83998301518760388, SamplesUtils.GetDoubleResult(osga, "CurrentWorstQuality"), 1E-8, Environment.NewLine + "Current Worst Quality differs."); 74 Assert.AreEqual(10600, SamplesUtils.GetIntResult(osga, "EvaluatedSolutions"), Environment.NewLine + "Evaluated Solutions differ."); 75 Assert.AreEqual(0.996270926227739, bestTrainingSolution.TrainingRSquared, 1E-8, Environment.NewLine + "Best Training Solution Training R² differs."); 76 Assert.AreEqual(0.9963422035282139, bestTrainingSolution.TestRSquared, 1E-8, Environment.NewLine + "Best Training Solution Test R² differs."); 77 77 } else { 78 Assert.AreEqual(0.9 971536312165723, SamplesUtils.GetDoubleResult(osga, "BestQuality"), 1E-8, Environment.NewLine + "Best Qualitiy differs.");79 Assert.AreEqual(0. 98382832370544937, SamplesUtils.GetDoubleResult(osga, "CurrentAverageQuality"), 1E-8, Environment.NewLine + "Current Average Quality differs.");80 Assert.AreEqual(0. 960805603777699, SamplesUtils.GetDoubleResult(osga, "CurrentWorstQuality"), 1E-8, Environment.NewLine + "Current Worst Quality differs.");81 Assert.AreEqual(10 500, SamplesUtils.GetIntResult(osga, "EvaluatedSolutions"), Environment.NewLine + "Evaluated Solutions differ.");82 Assert.AreEqual(0.9 971536312165723, bestTrainingSolution.TrainingRSquared, 1E-8, Environment.NewLine + "Best Training Solution Training R² differs.");83 Assert.AreEqual(0.0 10190137960908724, bestTrainingSolution.TestRSquared, 1E-8, Environment.NewLine + "Best Training Solution Test R² differs.");78 Assert.AreEqual(0.9784573626949189, SamplesUtils.GetDoubleResult(osga, "BestQuality"), 1E-8, Environment.NewLine + "Best Quality differs."); 79 Assert.AreEqual(0.82804701987417961, SamplesUtils.GetDoubleResult(osga, "CurrentAverageQuality"), 1E-8, Environment.NewLine + "Current Average Quality differs."); 80 Assert.AreEqual(0.700208975867862, SamplesUtils.GetDoubleResult(osga, "CurrentWorstQuality"), 1E-8, Environment.NewLine + "Current Worst Quality differs."); 81 Assert.AreEqual(10300, SamplesUtils.GetIntResult(osga, "EvaluatedSolutions"), Environment.NewLine + "Evaluated Solutions differ."); 82 Assert.AreEqual(0.9784573626949189, bestTrainingSolution.TrainingRSquared, 1E-8, Environment.NewLine + "Best Training Solution Training R² differs."); 83 Assert.AreEqual(0.0014620645328474451, bestTrainingSolution.TestRSquared, 1E-8, Environment.NewLine + "Best Training Solution Test R² differs."); 84 84 } 85 85 } -
branches/2521_ProblemRefactoring/HeuristicLab.Tests/HeuristicLab-3.3/Samples/GaussianProcessRegressionSampleTest.cs
r17526 r18087 52 52 gpr.Seed = 1618551877; 53 53 SamplesUtils.RunAlgorithm(gpr); 54 Assert.AreEqual(-9 40.70700288855619, SamplesUtils.GetDoubleResult(gpr, "NegativeLogLikelihood"));55 Assert.AreEqual(0.995 63390794061979, SamplesUtils.GetDoubleResult(gpr, "Training R²"));54 Assert.AreEqual(-992.445399028808, SamplesUtils.GetDoubleResult(gpr, "NegativeLogLikelihood"), 1e-8); 55 Assert.AreEqual(0.99559260785271853, SamplesUtils.GetDoubleResult(gpr, "Training R²"), 1e-8); 56 56 } 57 57 -
branches/2521_ProblemRefactoring/HeuristicLab.Tests/HeuristicLab-3.3/Samples/SamplesUtils.cs
r16692 r18087 21 21 a.Prepare(); 22 22 a.Start(); 23 Assert.IsNull(ex );23 Assert.IsNull(ex, ex?.ToString()); 24 24 } 25 25 -
branches/2521_ProblemRefactoring/HeuristicLab.Tests/HeuristicLab.Persistence.Attic/PersistenceConsistencyChecks.cs
r17226 r18087 2 2 using System.Collections.Generic; 3 3 using System.Linq; 4 using System.Reflection; 4 5 using HEAL.Attic; 5 6 using Microsoft.VisualStudio.TestTools.UnitTesting; … … 16 17 var dict = new Dictionary<Guid, string>(); 17 18 var duplicates = new Dictionary<string, string>(); 18 // using AppDomain instead of ApplicationManager so that NonDiscoverableTypes are also checked19 foreach (Type type in AppDomain.CurrentDomain.GetAssemblies().SelectMany(x => x.GetTypes())) {20 var attr = StorableTypeAttribute.GetStorableTypeAttribute(type);21 if (attr == null)22 continue;23 19 24 foreach (var guid in attr.Guids) { 25 if (!dict.ContainsKey(guid)) { 26 dict.Add(guid, type.FullName); 27 } else { 28 duplicates.Add(type.FullName, dict[guid]); 20 try { 21 // using AppDomain instead of ApplicationManager so that NonDiscoverableTypes are also checked 22 foreach (Type type in AppDomain.CurrentDomain.GetAssemblies().SelectMany(x => x.GetTypes())) { 23 var attr = StorableTypeAttribute.GetStorableTypeAttribute(type); 24 if (attr == null) 25 continue; 26 27 foreach (var guid in attr.Guids) { 28 if (!dict.ContainsKey(guid)) { 29 dict.Add(guid, type.FullName); 30 } else { 31 duplicates.Add(type.FullName, dict[guid]); 32 } 29 33 } 30 34 } 35 } catch (ReflectionTypeLoadException e) { 36 var loaderExeptions = string.Join("-----" + Environment.NewLine, e.LoaderExceptions.Select(x => x.ToString())); 37 var message = string.Join(Environment.NewLine, "Could not load all types. Check if test process architecture is set to x64.", 38 string.Empty, "Exception:", e, string.Empty, "LoaderExceptions:", loaderExeptions); 39 Assert.Fail(message); 31 40 } 32 41 -
branches/2521_ProblemRefactoring/HeuristicLab.Tests/HeuristicLab.Problems.DataAnalysis-3.4/ClassificationVariableImpactCalculationTest.cs
r16723 r18087 214 214 private Dictionary<string, double> GetExpectedValuesForIrisKNNModel() { 215 215 Dictionary<string, double> expectedImpacts = new Dictionary<string, double>(); 216 expectedImpacts.Add("petal_length", 0.2 1);217 expectedImpacts.Add("petal_width", 0. 25);218 expectedImpacts.Add("sepal_length", 0. 05);216 expectedImpacts.Add("petal_length", 0.22); 217 expectedImpacts.Add("petal_width", 0.35); 218 expectedImpacts.Add("sepal_length", 0.15); 219 219 expectedImpacts.Add("sepal_width", 0.05); 220 220 -
branches/2521_ProblemRefactoring/HeuristicLab.Tests/HeuristicLab.Problems.DataAnalysis-3.4/IntervalTest.cs
r17586 r18087 12 12 private readonly Interval e = new Interval(4, 6); 13 13 14 private void CheckLowerAndUpperBoundOfInterval(Interval expected, Interval calculated) { 15 var lowerBoundExpected = expected.LowerBound; 16 var upperBoundExpected = expected.UpperBound; 17 var lowerBoundCalculated = calculated.LowerBound; 18 var upperBoundCalculated = calculated.UpperBound; 19 20 if(double.IsNaN(lowerBoundExpected) && double.IsNaN(lowerBoundCalculated)) { 21 Assert.IsTrue(double.IsNaN(lowerBoundExpected) && double.IsNaN(lowerBoundCalculated)); 22 } else if (double.IsNaN(upperBoundExpected) && double.IsNaN(upperBoundCalculated)) { 23 Assert.IsTrue(double.IsNaN(upperBoundExpected) && double.IsNaN(upperBoundCalculated)); 24 } else { 25 Assert.AreEqual(lowerBoundExpected, lowerBoundCalculated, 1e-9); 26 Assert.AreEqual(upperBoundExpected, upperBoundCalculated, 1e-9); 27 } 28 } 29 14 30 [TestMethod] 15 31 [TestCategory("Problems.DataAnalysis")] … … 33 49 34 50 //[-1, 1] - [-2, 2] = [-3, 3] 35 Assert.AreEqual<Interval>(Interval.Subtract(a, b), new Interval(-3, 3));51 CheckLowerAndUpperBoundOfInterval(Interval.Subtract(a, b), new Interval(-3, 3)); 36 52 //([-1, 1] - [-2, 2]) - [0, 3] = [-6, 3] 37 Assert.AreEqual<Interval>(Interval.Subtract(Interval.Subtract(a, b), c), new Interval(-6, 3));53 CheckLowerAndUpperBoundOfInterval(Interval.Subtract(Interval.Subtract(a, b), c), new Interval(-6, 3)); 38 54 //([-1, 1] - [0, 3]) - [-2, 2] = [-6, 3] 39 Assert.AreEqual<Interval>(Interval.Subtract(Interval.Subtract(a, c), b), new Interval(-6, 3));55 CheckLowerAndUpperBoundOfInterval(Interval.Subtract(Interval.Subtract(a, c), b), new Interval(-6, 3)); 40 56 } 41 57 … … 47 63 48 64 //[-1, 1] * [-2, 2] = [-2, 2] 49 Assert.AreEqual<Interval>(Interval.Multiply(a, b), new Interval(-2, 2));65 CheckLowerAndUpperBoundOfInterval(Interval.Multiply(a, b), new Interval(-2, 2)); 50 66 //([-1, 1] * [-2, 2]) * [0, 3] = [-6, 6] 51 Assert.AreEqual<Interval>(Interval.Multiply(Interval.Multiply(a, b), c), new Interval(-6, 6));67 CheckLowerAndUpperBoundOfInterval(Interval.Multiply(Interval.Multiply(a, b), c), new Interval(-6, 6)); 52 68 //([-1, 1] * [0, 3]) * [-2, 2] = [-6, 6] 53 Assert.AreEqual<Interval>(Interval.Multiply(Interval.Multiply(a, c), b), new Interval(-6, 6));69 CheckLowerAndUpperBoundOfInterval(Interval.Multiply(Interval.Multiply(a, c), b), new Interval(-6, 6)); 54 70 55 71 // [-2, 0] * [-2, 0] = [0, 4] 56 Assert.AreEqual<Interval>(new Interval(0, 4), Interval.Multiply(new Interval(-2, 0), new Interval(-2, 0)));72 CheckLowerAndUpperBoundOfInterval(new Interval(0, 4), Interval.Multiply(new Interval(-2, 0), new Interval(-2, 0))); 57 73 } 58 74 … … 64 80 65 81 //[4, 6] / [1, 3] = [4/3, 6] 66 Assert.AreEqual<Interval>(Interval.Divide(e, d), new Interval(4.0 / 3.0, 6));82 CheckLowerAndUpperBoundOfInterval(Interval.Divide(e, d), new Interval(4.0 / 3.0, 6)); 67 83 //([4, 6] / [1, 3]) / [1, 3] = [4/9, 6] 68 Assert.AreEqual<Interval>(Interval.Divide(Interval.Divide(e, d), d), new Interval(4.0 / 9.0, 6));84 CheckLowerAndUpperBoundOfInterval(Interval.Divide(Interval.Divide(e, d), d), new Interval(4.0 / 9.0, 6)); 69 85 //[4, 6] / [0, 3] = [4/3, +Inf] 70 Assert.AreEqual<Interval>(Interval.Divide(e, c), new Interval(4.0 / 3.0, double.PositiveInfinity));86 CheckLowerAndUpperBoundOfInterval(Interval.Divide(e, c), new Interval(4.0 / 3.0, double.PositiveInfinity)); 71 87 //[-1, 1] / [0, 3] = [+Inf, -Inf] 72 Assert.AreEqual<Interval>(Interval.Divide(a, c), new Interval(double.NegativeInfinity, double.PositiveInfinity));88 CheckLowerAndUpperBoundOfInterval(Interval.Divide(a, c), new Interval(double.NegativeInfinity, double.PositiveInfinity)); 73 89 //Devision by 0 ==> IsInfiniteOrUndefined == true 74 90 Assert.IsTrue(Interval.Divide(e, c).IsInfiniteOrUndefined); 75 91 //Devision by 0 ==> IsInfiniteOrUndefined == true 76 92 Assert.IsTrue(Interval.Divide(a, c).IsInfiniteOrUndefined); 77 Assert.AreEqual<Interval>(Interval.Divide(d, b), new Interval(double.NegativeInfinity, double.PositiveInfinity));93 CheckLowerAndUpperBoundOfInterval(Interval.Divide(d, b), new Interval(double.NegativeInfinity, double.PositiveInfinity)); 78 94 } 79 95 … … 84 100 //sine depends on interval 85 101 //sin([0, 2*pi]) = [-1, 1] 86 Assert.AreEqual<Interval>(Interval.Sine(new Interval(0, 2 * Math.PI)), new Interval(-1, 1));102 CheckLowerAndUpperBoundOfInterval(Interval.Sine(new Interval(0, 2 * Math.PI)), new Interval(-1, 1)); 87 103 //sin([-pi/2, pi/2]) = [sin(-pi/2), sin(pi/2)] 88 Assert.AreEqual<Interval>(Interval.Sine(new Interval(-1 * Math.PI / 2, Math.PI / 2)), new Interval(-1, 1));104 CheckLowerAndUpperBoundOfInterval(Interval.Sine(new Interval(-1 * Math.PI / 2, Math.PI / 2)), new Interval(-1, 1)); 89 105 //sin([0, pi/2]) = [sin(0), sin(pi/2)] 90 Assert.AreEqual<Interval>(Interval.Sine(new Interval(0, Math.PI / 2)), new Interval(0, 1));106 CheckLowerAndUpperBoundOfInterval(Interval.Sine(new Interval(0, Math.PI / 2)), new Interval(0, 1)); 91 107 //sin([pi, 3*pi/2]) = [sin(pi), sin(3*pi/2)] 92 Assert.AreEqual<Interval>(Interval.Sine(new Interval(Math.PI, 3 * Math.PI / 2)), new Interval(-1, 0));93 Assert.AreEqual<Interval>(Interval.Sine(new Interval(1, 2)), new Interval(Math.Min(Math.Sin(1), Math.Sin(2)), 1));94 Assert.AreEqual<Interval>(Interval.Sine(new Interval(1, 3)), new Interval(Math.Min(Math.Sin(1), Math.Sin(3)), 1));95 Assert.AreEqual<Interval>(Interval.Sine(new Interval(Math.PI, 5 * Math.PI / 2)), new Interval(-1, 1));108 CheckLowerAndUpperBoundOfInterval(Interval.Sine(new Interval(Math.PI, 3 * Math.PI / 2)), new Interval(-1, 0)); 109 CheckLowerAndUpperBoundOfInterval(Interval.Sine(new Interval(1, 2)), new Interval(Math.Min(Math.Sin(1), Math.Sin(2)), 1)); 110 CheckLowerAndUpperBoundOfInterval(Interval.Sine(new Interval(1, 3)), new Interval(Math.Min(Math.Sin(1), Math.Sin(3)), 1)); 111 CheckLowerAndUpperBoundOfInterval(Interval.Sine(new Interval(Math.PI, 5 * Math.PI / 2)), new Interval(-1, 1)); 96 112 } 97 113 … … 101 117 public void CosineIntervalTest() { 102 118 //Cosine uses sine Interval.Sine(Interval.Subtract(a, new Interval(Math.PI / 2, Math.PI / 2))); 103 Assert.AreEqual<Interval>(Interval.Cosine(new Interval(0, 2 * Math.PI)), new Interval(-1, 1));104 Assert.AreEqual<Interval>(new Interval(-1, 1), Interval.Cosine(new Interval(Math.PI, 4 * Math.PI / 2)));119 CheckLowerAndUpperBoundOfInterval(Interval.Cosine(new Interval(0, 2 * Math.PI)), new Interval(-1, 1)); 120 CheckLowerAndUpperBoundOfInterval(new Interval(-1, 1), Interval.Cosine(new Interval(Math.PI, 4 * Math.PI / 2))); 105 121 } 106 122 … … 110 126 public void LogIntervalTest() { 111 127 //Log([3, 5]) = [log(3), log(5)] 112 Assert.AreEqual<Interval>(new Interval(Math.Log(3), Math.Log(5)), Interval.Logarithm(new Interval(3, 5)));128 CheckLowerAndUpperBoundOfInterval(new Interval(Math.Log(3), Math.Log(5)), Interval.Logarithm(new Interval(3, 5))); 113 129 //Log([0.5, 1]) = [log(0.5), log(1)] 114 Assert.AreEqual<Interval>(new Interval(Math.Log(0.5), 0), Interval.Logarithm(new Interval(0.5, 1)));130 CheckLowerAndUpperBoundOfInterval(new Interval(Math.Log(0.5), 0), Interval.Logarithm(new Interval(0.5, 1))); 115 131 //Log([-1, 5]) = [NaN, log(5)] 116 132 var result = Interval.Logarithm(new Interval(-1, 5)); 117 Assert.AreEqual<Interval>(new Interval(double.NaN, Math.Log(5)),result);133 CheckLowerAndUpperBoundOfInterval(new Interval(double.NaN, Math.Log(5)),result); 118 134 Assert.IsTrue(result.IsInfiniteOrUndefined); 119 135 } … … 125 141 public void ExponentialIntervalTest() { 126 142 //Exp([0, 1]) = [exp(0), exp(1)] 127 Assert.AreEqual<Interval>(new Interval(1, Math.Exp(1)), Interval.Exponential(new Interval(0, 1)));143 CheckLowerAndUpperBoundOfInterval(new Interval(1, Math.Exp(1)), Interval.Exponential(new Interval(0, 1))); 128 144 } 129 145 … … 133 149 [TestProperty("Time", "short")] 134 150 public void SquareIntervalTest() { 135 Assert.AreEqual<Interval>(new Interval(1, 4), Interval.Square(new Interval(1, 2)));136 Assert.AreEqual<Interval>(new Interval(1, 4), Interval.Square(new Interval(-2, -1)));137 Assert.AreEqual<Interval>(new Interval(0, 4), Interval.Square(new Interval(-2, 2)));151 CheckLowerAndUpperBoundOfInterval(new Interval(1, 4), Interval.Square(new Interval(1, 2))); 152 CheckLowerAndUpperBoundOfInterval(new Interval(1, 4), Interval.Square(new Interval(-2, -1))); 153 CheckLowerAndUpperBoundOfInterval(new Interval(0, 4), Interval.Square(new Interval(-2, 2))); 138 154 } 139 155 … … 142 158 [TestProperty("Time", "short")] 143 159 public void SquarerootIntervalTest() { 144 Assert.AreEqual<Interval>(new Interval(-2, 2), Interval.SquareRoot(new Interval(1, 4)));145 Assert.AreEqual<Interval>(new Interval(double.NaN, double.NaN), Interval.SquareRoot(new Interval(-4, -1)));160 CheckLowerAndUpperBoundOfInterval(new Interval(-2, 2), Interval.SquareRoot(new Interval(1, 4))); 161 CheckLowerAndUpperBoundOfInterval(new Interval(double.NaN, double.NaN), Interval.SquareRoot(new Interval(-4, -1))); 146 162 } 147 163 … … 150 166 [TestProperty("Time", "short")] 151 167 public void CubeIntervalTest() { 152 Assert.AreEqual<Interval>(new Interval(1, 8), Interval.Cube(new Interval(1, 2)));153 Assert.AreEqual<Interval>(new Interval(-8, -1), Interval.Cube(new Interval(-2, -1)));154 Assert.AreEqual<Interval>(new Interval(-8, 8), Interval.Cube(new Interval(-2, 2)));168 CheckLowerAndUpperBoundOfInterval(new Interval(1, 8), Interval.Cube(new Interval(1, 2))); 169 CheckLowerAndUpperBoundOfInterval(new Interval(-8, -1), Interval.Cube(new Interval(-2, -1))); 170 CheckLowerAndUpperBoundOfInterval(new Interval(-8, 8), Interval.Cube(new Interval(-2, 2))); 155 171 } 156 172 … … 159 175 [TestProperty("Time", "short")] 160 176 public void CubeRootIntervalTest() { 161 Assert.AreEqual<Interval>(new Interval(1, 2), Interval.CubicRoot(new Interval(1, 8)));162 Assert.AreEqual<Interval>(new Interval(-2, -2), Interval.CubicRoot(new Interval(-8, -8)));163 Assert.AreEqual<Interval>(new Interval(-2, 2), Interval.CubicRoot(new Interval(-8, 8)));177 CheckLowerAndUpperBoundOfInterval(new Interval(1, 2), Interval.CubicRoot(new Interval(1, 8))); 178 CheckLowerAndUpperBoundOfInterval(new Interval(-2, -2), Interval.CubicRoot(new Interval(-8, -8))); 179 CheckLowerAndUpperBoundOfInterval(new Interval(-2, 2), Interval.CubicRoot(new Interval(-8, 8))); 164 180 Assert.AreEqual(new Interval(2, 2), Interval.CubicRoot(new Interval(8, 8))); 165 181 Assert.AreEqual(new Interval(-Math.Pow(6, 1.0 / 3), 2), Interval.CubicRoot(new Interval(-6, 8))); … … 204 220 //Assert.AreEqual(new Interval(aZero.LowerBound/Math.Sqrt(5), aZero.UpperBound/Math.Sqrt(5)), Interval.AnalyticalQuotient(aZero, bNeg)); 205 221 //Assert.AreEqual(new Interval(aNeg.LowerBound/Math.Sqrt(5), aNeg.UpperBound/Math.Sqrt(17)), Interval.AnalyticalQuotient(aNeg, bNeg)); 206 Assert.AreEqual(new Interval(double.NegativeInfinity, double.PositiveInfinity), Interval.Analytic alQuotient(aPos, bZero));207 Assert.AreEqual(new Interval(double.NegativeInfinity, double.PositiveInfinity), Interval.Analytic alQuotient(aPos, bPos));208 Assert.AreEqual(new Interval(double.NegativeInfinity, double.PositiveInfinity), Interval.Analytic alQuotient(aZero, bNeg));222 Assert.AreEqual(new Interval(double.NegativeInfinity, double.PositiveInfinity), Interval.AnalyticQuotient(aPos, bZero)); 223 Assert.AreEqual(new Interval(double.NegativeInfinity, double.PositiveInfinity), Interval.AnalyticQuotient(aPos, bPos)); 224 Assert.AreEqual(new Interval(double.NegativeInfinity, double.PositiveInfinity), Interval.AnalyticQuotient(aZero, bNeg)); 209 225 } 210 226 … … 312 328 [TestCategory("Problems.DataAnalysis")] 313 329 [TestProperty("Time", "short")] 330 public void GeometricTest() { 331 CheckLowerAndUpperBoundOfInterval(new Interval(-1, -0.936456687290796), Interval.Cosine(new Interval(3, 3.5))); 332 CheckLowerAndUpperBoundOfInterval(new Interval(-1, -0.936456687290796), Interval.Cosine(new Interval(-3.5, -3))); 333 CheckLowerAndUpperBoundOfInterval(new Interval(-1, 1), Interval.Cosine(new Interval(-3.5, 3))); 334 CheckLowerAndUpperBoundOfInterval(new Interval(-0.839071529076452, 0.843853958732493), Interval.Cosine(new Interval(10, 12))); 335 CheckLowerAndUpperBoundOfInterval(new Interval(0.136737218207833, 0.907446781450197), Interval.Cosine(new Interval(13, 14))); 336 CheckLowerAndUpperBoundOfInterval(new Interval(-0.839071529076452, 1), Interval.Cosine(new Interval(10, 14))); 337 CheckLowerAndUpperBoundOfInterval(new Interval(-1, 0.136737218207833), Interval.Cosine(new Interval(14, 16))); 338 CheckLowerAndUpperBoundOfInterval(new Interval(-0.839071529076452, 0.004425697988051), Interval.Cosine(new Interval(-11, -10))); 339 CheckLowerAndUpperBoundOfInterval(new Interval(0.136737218207833, 0.907446781450197), Interval.Cosine(new Interval(-14, -13))); 340 CheckLowerAndUpperBoundOfInterval(new Interval(-1, 0.136737218207833), Interval.Cosine(new Interval(-16, -14))); 341 CheckLowerAndUpperBoundOfInterval(new Interval(0.101585703696621, 1), Interval.Cosine(new Interval(-102, -100))); 342 CheckLowerAndUpperBoundOfInterval(new Interval(-1, 1), Interval.Cosine(new Interval(4.6e15, 4.7e15))); 343 CheckLowerAndUpperBoundOfInterval(new Interval(0.87758256189037265, 0.87758256189037276), Interval.Cosine(new Interval(0.5, 0.5))); 344 CheckLowerAndUpperBoundOfInterval(new Interval(-0.09904103659872825, 0.8775825618903728), Interval.Cosine(new Interval(0.5, 1.67))); 345 CheckLowerAndUpperBoundOfInterval(new Interval(-1.0, 0.77556587851025016), Interval.Cosine(new Interval(2.1, 5.6))); 346 CheckLowerAndUpperBoundOfInterval(new Interval(-1.0, 1.0), Interval.Cosine(new Interval(0.5, 8.5))); 347 CheckLowerAndUpperBoundOfInterval(new Interval(-1.0, -0.09904103659872801), Interval.Cosine(new Interval(1.67, 3.2))); 348 349 CheckLowerAndUpperBoundOfInterval(new Interval(double.NegativeInfinity, double.PositiveInfinity), Interval.Tangens(new Interval(double.NegativeInfinity, double.PositiveInfinity))); 350 CheckLowerAndUpperBoundOfInterval(new Interval(0, 1.55740772465490223051), Interval.Tangens(new Interval(0, 1))); 351 CheckLowerAndUpperBoundOfInterval(new Interval(-1.55740772465490223051, 0), Interval.Tangens(new Interval(-1, 0))); 352 CheckLowerAndUpperBoundOfInterval(new Interval(double.NegativeInfinity, double.PositiveInfinity), Interval.Tangens(new Interval(-2, -1))); 353 CheckLowerAndUpperBoundOfInterval(new Interval(double.NegativeInfinity, double.PositiveInfinity), Interval.Tangens(new Interval(202, 203))); 354 CheckLowerAndUpperBoundOfInterval(new Interval(0.54630248984379048, 0.5463024898437906), Interval.Tangens(new Interval(0.5, 0.5))); 355 CheckLowerAndUpperBoundOfInterval(new Interval(double.NegativeInfinity, double.PositiveInfinity), Interval.Tangens(new Interval(0.5, 356 1.67))); 357 358 CheckLowerAndUpperBoundOfInterval(new Interval(double.NegativeInfinity, double.PositiveInfinity), Interval.Tangens(new Interval( 359 6.638314112824137, 8.38263151220128))); 360 361 CheckLowerAndUpperBoundOfInterval(new Interval(0.47942553860420295, 0.47942553860420301), Interval.Sine(new Interval(0.5, 0.5))); 362 CheckLowerAndUpperBoundOfInterval(new Interval(4.7942553860420295e-01, 1.0), Interval.Sine(new Interval(0.5, 1.67))); 363 CheckLowerAndUpperBoundOfInterval(new Interval(-5.8374143427580093e-02, 9.9508334981018021e-01), Interval.Sine(new Interval(1.67, 364 3.2))); 365 CheckLowerAndUpperBoundOfInterval(new Interval(-1.0, 0.863209366648874), Interval.Sine(new Interval(2.1, 5.6))); 366 CheckLowerAndUpperBoundOfInterval(new Interval(-1.0, 1.0), Interval.Sine(new Interval(0.5, 8.5))); 367 CheckLowerAndUpperBoundOfInterval(new Interval(-1.0, 0.9775301176650971), Interval.Sine(new Interval(-4.5, 0.1))); 368 CheckLowerAndUpperBoundOfInterval(new Interval(-1.0, 1.0), Interval.Sine(new Interval(1.3, 6.3))); 369 } 370 371 [TestMethod] 372 [TestCategory("Problems.DataAnalysis")] 373 [TestProperty("Time", "short")] 314 374 public void EqualsTest() { 315 375 var interval1 = new Interval(0, 12); -
branches/2521_ProblemRefactoring/HeuristicLab.Tests/HeuristicLab.Problems.DataAnalysis-3.4/RegressionVariableImpactCalculationTest.cs
r16723 r18087 271 271 private Dictionary<string, double> GetExpectedValuesForRFTower() { 272 272 Dictionary<string, double> expectedImpacts = new Dictionary<string, double>(); 273 expectedImpacts.Add("x 5", 0.00138095702433039);274 expectedImpacts.Add("x 19", 0.00220739387855795);275 expectedImpacts.Add("x 14", 0.00225120540266954);276 expectedImpacts.Add("x 18", 0.00311857736968479);277 expectedImpacts.Add("x 9", 0.00313474690023097);278 expectedImpacts.Add("x 20", 0.00321781251408282);279 expectedImpacts.Add("x 21", 0.00397483365571383);280 expectedImpacts.Add("x 16", 0.00433280262892111);281 expectedImpacts.Add("x 15", 0.00529918809786456);282 expectedImpacts.Add("x 3", 0.00658791244929757);283 expectedImpacts.Add("x 24", 0.0078645281886035);284 expectedImpacts.Add("x 4", 0.00907314110749047);285 expectedImpacts.Add("x13", 0.0 102943761648944);286 expectedImpacts.Add("x 22", 0.0107132858548163);287 expectedImpacts.Add("x1 2", 0.0157078677788507);288 expectedImpacts.Add("x 23", 0.0235857534562318);289 expectedImpacts.Add("x 7", 0.0304143401617055);290 expectedImpacts.Add("x1 1", 0.0310773441767309);291 expectedImpacts.Add("x 25", 0.0328308945873665);292 expectedImpacts.Add("x 17", 0.0428771226844575);293 expectedImpacts.Add("x 10", 0.0456335367972532);294 expectedImpacts.Add("x 8", 0.049849257881126);295 expectedImpacts.Add("x 1", 0.0663686086323108);296 expectedImpacts.Add("x2 ", 0.0799083890750926);297 expectedImpacts.Add("x 6", 0.196557814244287);273 expectedImpacts.Add("x1", 0.0460043373592669); 274 expectedImpacts.Add("x2", 0.0771677998074048); 275 expectedImpacts.Add("x3", 0.00619316631767142); 276 expectedImpacts.Add("x4", 0.0173307649229608); 277 expectedImpacts.Add("x5", 0.00165078943166208); 278 expectedImpacts.Add("x6", 0.393797136971534); 279 expectedImpacts.Add("x7", 0.0103041010136826); 280 expectedImpacts.Add("x8", 0.0218489557817256); 281 expectedImpacts.Add("x9", 0.0033320239547433); 282 expectedImpacts.Add("x10", 0.0386869026272391); 283 expectedImpacts.Add("x11", 0.0194313200667007); 284 expectedImpacts.Add("x12", 0.00685957264555537); 285 expectedImpacts.Add("x13", 0.00996030046057605); 286 expectedImpacts.Add("x14", 0.00290837005063926); 287 expectedImpacts.Add("x15", 0.00487537076065259); 288 expectedImpacts.Add("x16", 0.00469764322452204); 289 expectedImpacts.Add("x17", 0.0373542975924628); 290 expectedImpacts.Add("x18", 0.00208482408757715); 291 expectedImpacts.Add("x19", 0.00250463259329947); 292 expectedImpacts.Add("x20", 0.00211501042751294); 293 expectedImpacts.Add("x21", 0.0028823562854704); 294 expectedImpacts.Add("x22", 0.0113878041309722); 295 expectedImpacts.Add("x23", 0.0454532954039953); 296 expectedImpacts.Add("x24", 0.0115989415893684); 297 expectedImpacts.Add("x25", 0.0196479481586532); 298 298 299 299 return expectedImpacts; -
branches/2521_ProblemRefactoring/HeuristicLab.Tests/HeuristicLab.Problems.DataAnalysis.Symbolic-3.4/SymbolicDataAnalysisExpressionTreeInterpreterTest.cs
r17226 r18087 274 274 [TestProperty("Time", "long")] 275 275 public void TestCompiledInterpreterEstimatedValuesConsistency() { 276 const double delta = 1e- 12;276 const double delta = 1e-8; 277 277 278 278 var twister = new MersenneTwister(); … … 288 288 grammar.ConfigureAsDefaultRegressionGrammar(); 289 289 grammar.Symbols.First(x => x.Name == "Power Functions").Enabled = true; 290 grammar.Symbols.First(x => x is Cube).Enabled = true; 291 grammar.Symbols.First(x => x is CubeRoot).Enabled = true; 292 grammar.Symbols.First(x => x is Square).Enabled = true; 293 grammar.Symbols.First(x => x is SquareRoot).Enabled = true; 294 grammar.Symbols.First(x => x is Absolute).Enabled = true; 295 grammar.Symbols.First(x => x is Sine).Enabled = true; 296 grammar.Symbols.First(x => x is Cosine).Enabled = true; 297 grammar.Symbols.First(x => x is Tangent).Enabled = true; 298 grammar.Symbols.First(x => x is Root).Enabled = false; 299 grammar.Symbols.First(x => x is Power).Enabled = false; 290 300 291 301 var randomTrees = Util.CreateRandomTrees(twister, dataset, grammar, N, 1, 10, 0, 0); … … 311 321 var v2 = valuesMatrix[n][row]; 312 322 if (double.IsNaN(v1) && double.IsNaN(v2)) continue; 313 if ( Math.Abs(v1 - v2) >delta) {323 if (v1 != v2 && Math.Abs(1.0 - v1 / v2) >= delta) { 314 324 Console.WriteLine(formatter.Format(tree)); 315 325 foreach (var node in tree.Root.GetSubtree(0).GetSubtree(0).IterateNodesPrefix().ToList()) { … … 339 349 } 340 350 string errorMessage = string.Format("Interpreters {0} and {1} do not agree on tree {2} and row {3} (seed = {4}).", interpreters[m].Name, interpreters[n].Name, i, row, seed); 341 Assert.AreEqual(v1, v2, delta, errorMessage); 351 Assert.IsTrue(double.IsNaN(v1) && double.IsNaN(v2) || 352 v1 == v2 || // in particular 0 = 0 353 Math.Abs(1.0 - v1 / v2) < delta, errorMessage); 342 354 } 343 355 } -
branches/2521_ProblemRefactoring/HeuristicLab.Tests/HeuristicLab.Problems.DataAnalysis.Symbolic-3.4/SymbolicDataAnalysisExpressionTreeSimplifierTest.cs
r17226 r18087 99 99 #region root rules 100 100 // cancellation 101 AssertEqualAfterSimplification("(root (variable 2.0 a) 0.0)", " 1.0");101 AssertEqualAfterSimplification("(root (variable 2.0 a) 0.0)", "NaN"); 102 102 // fixed point 103 103 AssertEqualAfterSimplification("(root (variable 2.0 a) 1.0)", "(variable 2.0 a)"); … … 269 269 270 270 #endregion 271 272 #region do not drop subtrees with small weights 273 AssertEqualAfterSimplification("(* 1e-14 (variable 1.0 a))", "(variable 1e-14 a)"); 274 AssertEqualAfterSimplification("(+ (variable 1.0 a) 1e-14)", 275 "(+ (variable 1.0 a) 1e-14)"); 276 // a scenario where a term with small weight can have large effect 277 AssertEqualAfterSimplification("(+ (* (pow (variable 1.0 a) 10) 1e-14) 1.0)", 278 "(+ (* (pow (variable 1.0 a) 10) 1e-14) 1.0)"); 279 // a test case (from ticket #2985) 280 AssertEqualAfterSimplification("(+ (* (exp (variable 3.5861E+001 a)) 5.5606E-016) 5.9323E-002)", 281 "(+ (* (exp (variable 3.5861E+001 a)) 5.5606E-016) 5.9323E-002)"); 282 #endregion 271 283 } 272 284 -
branches/2521_ProblemRefactoring/HeuristicLab.Tests/HeuristicLab.Scripting-3.3/GridSearchRFClassificationScriptTest.cs
r17226 r18087 59 59 60 60 var bestSolution = ScriptingUtils.GetVariable<IClassificationSolution>(script, BestSolutionVariableName); 61 Assert.AreEqual(0.85 179407176287, bestSolution.TrainingAccuracy, 1E-8);62 Assert.AreEqual(0.8 1875, bestSolution.TestAccuracy, 1E-8);61 Assert.AreEqual(0.858034321372855, bestSolution.TrainingAccuracy, 1E-8); 62 Assert.AreEqual(0.821875, bestSolution.TestAccuracy, 1E-8); 63 63 } 64 64 -
branches/2521_ProblemRefactoring/HeuristicLab.Tests/HeuristicLab.Scripting-3.3/GridSearchRFRegressionScriptTest.cs
r17226 r18087 59 59 60 60 var bestSolution = ScriptingUtils.GetVariable<IRegressionSolution>(script, BestSolutionVariableName); 61 Assert.AreEqual(0.96 8329534139836, bestSolution.TrainingRSquared, 1E-8);62 Assert.AreEqual(0.98 2380790563445, bestSolution.TestRSquared, 1E-8);61 Assert.AreEqual(0.964218622548574, bestSolution.TrainingRSquared, 1E-8); 62 Assert.AreEqual(0.985989017766796, bestSolution.TestRSquared, 1E-8); 63 63 } 64 64 -
branches/2521_ProblemRefactoring/HeuristicLab.Tests/HeuristicLab.Scripting-3.3/Script Sources/GridSearchRFClassificationScriptSource.cs
r12292 r18087 38 38 double rmsError, outOfBagRmsError, relClassificationError, outOfBagRelClassificationError; 39 39 bestParameters = RandomForestUtil.GridSearch(problemData, numberOfFolds, shuffleFolds, randomForestParameterRanges, seed, maximumDegreeOfParallelism); 40 var model = RandomForest Model.CreateClassificationModel(problemData, problemData.TrainingIndices, bestParameters.N, bestParameters.R, bestParameters.M, seed,41 out rmsError, out outOfBagRmsError, out relClassificationError, out outOfBagRelClassificationError);40 var model = RandomForestClassification.CreateRandomForestClassificationModel(problemData, problemData.TrainingIndices, bestParameters.N, bestParameters.R, bestParameters.M, seed, 41 out rmsError, out relClassificationError, out outOfBagRmsError, out outOfBagRelClassificationError); 42 42 return (RandomForestClassificationSolution)model.CreateClassificationSolution(problemData); 43 43 } … … 46 46 double rmsError, outOfBagRmsError, relClassificationError, outOfBagRelClassificationError; 47 47 bestParameters = RandomForestUtil.GridSearch(problemData, randomForestParameterRanges, seed, maximumDegreeOfParallelism); 48 var model = RandomForest Model.CreateClassificationModel(problemData, problemData.TrainingIndices, bestParameters.N, bestParameters.R, bestParameters.M, seed,49 out rmsError, out outOfBagRmsError, out relClassificationError, out outOfBagRelClassificationError);48 var model = RandomForestClassification.CreateRandomForestClassificationModel(problemData, problemData.TrainingIndices, bestParameters.N, bestParameters.R, bestParameters.M, seed, 49 out rmsError, out relClassificationError, out outOfBagRmsError, out outOfBagRelClassificationError); 50 50 return (RandomForestClassificationSolution)model.CreateClassificationSolution(problemData); 51 51 } -
branches/2521_ProblemRefactoring/HeuristicLab.Tests/HeuristicLab.Scripting-3.3/Script Sources/GridSearchRFRegressionScriptSource.cs
r12292 r18087 14 14 /* Number of crossvalidation folds: */ 15 15 const int numberOfFolds = 3; 16 /* Specify whether the crossvalidation folds should be shuffled */17 const bool shuffleFolds = true;18 16 19 17 /* The tunable Random Forest parameters: … … 37 35 private static RandomForestRegressionSolution GridSearchWithCrossvalidation(IRegressionProblemData problemData, out RFParameter bestParameters, int seed = 3141519) { 38 36 double rmsError, outOfBagRmsError, avgRelError, outOfBagAvgRelError; 39 bestParameters = RandomForestUtil.GridSearch(problemData, numberOfFolds, shuffleFolds, randomForestParameterRanges, seed, maximumDegreeOfParallelism); 40 var model = RandomForestModel.CreateRegressionModel(problemData, problemData.TrainingIndices, bestParameters.N, bestParameters.R, bestParameters.M, seed, out rmsError, out outOfBagRmsError, out avgRelError, out outOfBagAvgRelError); 37 bestParameters = RandomForestUtil.GridSearch(problemData, numberOfFolds, randomForestParameterRanges, seed, maximumDegreeOfParallelism); 38 var model = RandomForestRegression.CreateRandomForestRegressionModel(problemData, problemData.TrainingIndices, bestParameters.N, bestParameters.R, bestParameters.M, seed, 39 out rmsError, out avgRelError, out outOfBagRmsError, out outOfBagAvgRelError); 41 40 return (RandomForestRegressionSolution)model.CreateRegressionSolution(problemData); 42 41 } … … 46 45 var random = new MersenneTwister(); 47 46 bestParameters = RandomForestUtil.GridSearch(problemData, randomForestParameterRanges, seed, maximumDegreeOfParallelism); 48 var model = RandomForest Model.CreateRegressionModel(problemData, problemData.TrainingIndices, bestParameters.N, bestParameters.R, bestParameters.M, seed,49 out rmsError, out outOfBagRmsError, out avgRelError, out outOfBagAvgRelError);47 var model = RandomForestRegression.CreateRandomForestRegressionModel(problemData, problemData.TrainingIndices, bestParameters.N, bestParameters.R, bestParameters.M, seed, 48 out rmsError, out avgRelError, out outOfBagRmsError, out outOfBagAvgRelError); 50 49 return (RandomForestRegressionSolution)model.CreateRegressionSolution(problemData); 51 50 } -
branches/2521_ProblemRefactoring/HeuristicLab.Tests/HeuristicLab.Tests.csproj
r17338 r18087 109 109 </PropertyGroup> 110 110 <ItemGroup> 111 <Reference Include="ALGLIB-3. 7.0">112 <HintPath>..\bin\ALGLIB-3. 7.0.dll</HintPath>111 <Reference Include="ALGLIB-3.17.0"> 112 <HintPath>..\bin\ALGLIB-3.17.0.dll</HintPath> 113 113 <Private>False</Private> 114 114 </Reference> … … 206 206 <SpecificVersion>False</SpecificVersion> 207 207 <HintPath>..\bin\HeuristicLab.Encodings.LinearLinkageEncoding-3.4.dll</HintPath> 208 <Private>False</Private> 208 209 </Reference> 209 210 <Reference Include="HeuristicLab.Encodings.PermutationEncoding-3.3"> … … 282 283 <Private>False</Private> 283 284 </Reference> 284 <Reference Include="HeuristicLab.Problems.DataAnalysis-3.4"> 285 <Reference Include="HeuristicLab.Problems.DataAnalysis-3.4, Version=3.4.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 286 <SpecificVersion>False</SpecificVersion> 285 287 <HintPath>..\bin\HeuristicLab.Problems.DataAnalysis-3.4.dll</HintPath> 286 288 <Private>False</Private> 287 289 </Reference> 288 <Reference Include="HeuristicLab.Problems.DataAnalysis.Symbolic-3.4"> 290 <Reference Include="HeuristicLab.Problems.DataAnalysis.Symbolic-3.4, Version=3.4.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 291 <SpecificVersion>False</SpecificVersion> 289 292 <HintPath>..\bin\HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.dll</HintPath> 290 293 <Private>False</Private> … … 473 476 <Compile Include="HeuristicLab-3.3\Samples\OSESGriewankSampleTest.cs" /> 474 477 <Compile Include="HeuristicLab-3.3\Samples\GAGroupingProblemSampleTest.cs" /> 478 <Compile Include="HeuristicLab-3.3\Samples\ShapeConstrainedRegressionSampleTest.cs" /> 475 479 <Compile Include="HeuristicLab-3.3\Samples\LocalSearchKnapsackSampleTest.cs" /> 476 480 <Compile Include="HeuristicLab-3.3\Samples\SimulatedAnnealingRastriginSampleTest.cs" /> … … 498 502 <Compile Include="HeuristicLab-3.3\ToStringTest.cs" /> 499 503 <Compile Include="HeuristicLab.Algorithms.DataAnalysis-3.4\GradientBoostingTest.cs" /> 504 <Compile Include="HeuristicLab.Algorithms.DataAnalysis-3.4\CrossValidationTest.cs" /> 500 505 <Compile Include="HeuristicLab.Algorithms.DataAnalysis-3.4\NcaAlgorithmTest.cs" /> 501 506 <Compile Include="HeuristicLab.Algorithms.DataAnalysis-3.4\SupportVectorMachineTest.cs" /> -
branches/2521_ProblemRefactoring/Test.ps1
r17226 r18087 159 159 160 160 & $vstestPath "bin\$testcontainer" /Framework:framework40 /Platform:$testplatform /TestCaseFilter:"TestCategory=$testcategory" 161 # SIG # Begin signature block 162 # MIIRPwYJKoZIhvcNAQcCoIIRMDCCESwCAQExDzANBglghkgBZQMEAgEFADB5Bgor 163 # BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG 164 # KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCAJ0I/t/xZNoRef 165 # SWG1a9MeW996RfVwX+NKpwaPNeHob6CCDo4wggbaMIIEwqADAgECAhNoAAE6ILAh 166 # JeBjaP8pAAEAATogMA0GCSqGSIb3DQEBCwUAMD4xEjAQBgoJkiaJk/IsZAEZFgJh 167 # dDEVMBMGCgmSJomT8ixkARkWBWZob29lMREwDwYDVQQDEwhGSE9PZUNBMTAeFw0x 168 # OTExMDYwOTI1NTJaFw0yNDExMDQwOTI1NTJaMD4xFjAUBgNVBAsTDUZ1RSBIYWdl 169 # bmJlcmcxJDAiBgNVBAMTG0ZIIE9PRSBTdHVkaWVuYmV0cmllYnMgR21iSDCCASIw 170 # DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANCook/YMdRq1PdL6DPB2ktDaZ5U 171 # 5+fP9EwD+fjS5CgpsSy8U54tFwKwAohaBl4SAsobOEDwTHFqn0g2SWrj/Kct+pAB 172 # a+1lFOFV6YsV5rj+ldPDpQde8bXO+XWTN/6+9zd//Xrxem6Zk1ObeDOrsOUr9PLT 173 # JIYAWN5Iwp2ziKmsgxBxJHx5FU7pTgB/RhZ2gqu+w5uPZEg8rtUQqwvaNREmIEGg 174 # XStODc1yLzcEx1VyWA1DUmdB6e4LLIh/NwYiOHrObdazS9IsI1DOD1jcTScBL5je 175 # CAZF+smlJGw6GJXztgRoU5d2IcpVwpzCOBbNfkuxwbJRrjGyp0kPFxWm5zECAwEA 176 # AaOCAs8wggLLMD0GCSsGAQQBgjcVBwQwMC4GJisGAQQBgjcVCIXvr0qBqfofgtGT 177 # A93ie4P1wUaBMoebr3KF1uNaAgFkAgEDMBMGA1UdJQQMMAoGCCsGAQUFBwMDMAsG 178 # A1UdDwQEAwIHgDAMBgNVHRMBAf8EAjAAMBsGCSsGAQQBgjcVCgQOMAwwCgYIKwYB 179 # BQUHAwMwHQYDVR0OBBYEFMi6j7BVQzhTjLBM6ivt63QrHvPuMB8GA1UdIwQYMBaA 180 # FOGlT0Cc05JYLnOIQcSeAsDFJDXFMIH1BgNVHR8Ege0wgeowgeeggeSggeGGgbBs 181 # ZGFwOi8vL0NOPUZIT09lQ0ExKDEpLENOPWZob29lY2ExLENOPUNEUCxDTj1QdWJs 182 # aWMlMjBLZXklMjBTZXJ2aWNlcyxDTj1TZXJ2aWNlcyxDTj1Db25maWd1cmF0aW9u 183 # LERDPWZob29lLERDPWF0P2NlcnRpZmljYXRlUmV2b2NhdGlvbkxpc3Q/YmFzZT9v 184 # YmplY3RDbGFzcz1jUkxEaXN0cmlidXRpb25Qb2ludIYsaHR0cDovL3BraS5zcnYu 185 # Zmgtb29lLmF0L3BraS9GSE9PZUNBMSgxKS5jcmwwggEDBggrBgEFBQcBAQSB9jCB 186 # 8zCBpAYIKwYBBQUHMAKGgZdsZGFwOi8vL0NOPUZIT09lQ0ExLENOPUFJQSxDTj1Q 187 # dWJsaWMlMjBLZXklMjBTZXJ2aWNlcyxDTj1TZXJ2aWNlcyxDTj1Db25maWd1cmF0 188 # aW9uLERDPWZob29lLERDPWF0P2NBQ2VydGlmaWNhdGU/YmFzZT9vYmplY3RDbGFz 189 # cz1jZXJ0aWZpY2F0aW9uQXV0aG9yaXR5MEoGCCsGAQUFBzAChj5odHRwOi8vcGtp 190 # LnNydi5maC1vb2UuYXQvcGtpL2Zob29lY2ExLmZob29lLmF0X0ZIT09lQ0ExKDEp 191 # LmNydDANBgkqhkiG9w0BAQsFAAOCAgEAO1g1XWnosz2Qrm2Qt6wruKNn/Cd1f/a2 192 # QZjtzCmTPLGWWFw/kX7hPwrjsfojZoMWT+17ogBB7LVLQG90DwzPVFtAmyPdIJ8/ 193 # tbu1nu+kRR6qyC3iPW8RZetjT5FAyxHSPNvyI1INXenHmShwkG1hjvjVOGiBECh3 194 # bfrY95qbZNdBpYee9xqEGlOj/LkRokM+hTlj65MgkFHGwPkiR6AZhnC6tVg3j2wX 195 # Y+0yaYiXc+iNWOLmQDVwxBmD5bEzToH7EoTsCNcxkatvNzwapdyyz8ycENqyVAGQ 196 # DxcEf2xNKZQU6PV1xJC8ltfpL4fL2MVQQ35VazMKGm+FeY5Jw+z7tph7Yxseb7KP 197 # wy4iKY9GAt7bEIJSSUNX0ni/MoWULsdU3EQDPedMS5v3I5C+7GfDJiThq+b2xSm3 198 # UIImrG+saST3hmC0fM3iffoujzn1tFm2POnNtIwL1X165quLCRhs4YHm57CxRcei 199 # LfETrOL3Qd08w1nJVnsEvppqe4NauzdO4jPbxsSFCse10xO/2TW1C/ugraXv1fSU 200 # HlYpUtt+wGhFV75QspOgUgWGc3KBMYm1XwjTWRwBZUd3l7S3UP6IqHaRu3I7eBsF 201 # OUArTCtXSK+szMW+1G1gIoT61ZyxemUjg9GuF7qIRwlt+Bax4Jy1aZ1TsmV0z1SS 202 # nBxuiKeBO1MwggesMIIFlKADAgECAhMeAAAABpSzaQpcq/lwAAEAAAAGMA0GCSqG 203 # SIb3DQEBCwUAMBcxFTATBgNVBAMTDEZIT09lUm9vdENBMTAeFw0xNTA1MDcxMjIy 204 # MzFaFw0yNzA1MDcxMjMyMzFaMD4xEjAQBgoJkiaJk/IsZAEZFgJhdDEVMBMGCgmS 205 # JomT8ixkARkWBWZob29lMREwDwYDVQQDEwhGSE9PZUNBMTCCAiIwDQYJKoZIhvcN 206 # AQEBBQADggIPADCCAgoCggIBAMA7PbbPxLUYOLUThQt0UWtwpT5rT1ZIRinD/wXG 207 # asjsvxTEsWDG6kf0tLyLlf64zNOhtXG5pbidu+rcmdnlut58h9So8QuZELdb8xbS 208 # 9rM3oTC9wKGW57oRydxIo7WkQwX/IZHefQf2X8AVp0Sb+kCvedUee1/GLIpfef1Y 209 # SvIxYURxI5xM7wcnRPPrWDWF+qvKe5miC8DiJ4+xAWqwbXwUUdIq9DUk9JL+2waq 210 # GfRodEpMZu/2KlYb6X4z9ZHFgq5OmW+g/WsvyZVQmuXuW0049yP6y79upgFitSrA 211 # VeJhEumheU58NC6VBAFvhyCwiR0R1brkpW5s5UP4A3nv1KsVTP12uU7kdWkqwhSa 212 # 6OMrga5H4ixHYLIpVqQ4j3K1qHNZfxBtVs5x6VhBhPOxT4uFTzFXiX1VZZK1bH2k 213 # K6jV0Hvyr/DzUNlwED2mZ8K7PwPbiDJyemvyvSeEvV/Nk12q8rSM308fVXy2Pkm5 214 # LuAxgNejOBNSmH828IR3Zd2TGgRYfGFklfNpAEOBNgz287/saMkNr/BqTrWFkuD8 215 # sevpa93bCo7OhWUgVNiVWjSdL/J3aj9cX3lu/M0nv06Mi1WdexUcstgxS8nY3ypP 216 # +WRbbmmll7+u/8udk+07Wm+DbQMQ9kS3ElnYgSCu93N/yVoR/lpGAdPkuns0lPHM 217 # ju3bAgMBAAGjggLIMIICxDASBgkrBgEEAYI3FQEEBQIDAQABMCMGCSsGAQQBgjcV 218 # AgQWBBR6W9jjcxJzbDG3JxXfKJnYNFE5gjAdBgNVHQ4EFgQU4aVPQJzTklguc4hB 219 # xJ4CwMUkNcUwGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwCwYDVR0PBAQDAgGG 220 # MBIGA1UdEwEB/wQIMAYBAf8CAQAwHwYDVR0jBBgwFoAUUam+2+0DBpS2t/5JT7W9 221 # I1iYA9YwggEBBgNVHR8EgfkwgfYwgfOggfCgge2GgbhsZGFwOi8vL0NOPUZIT09l 222 # Um9vdENBMSgxKSxDTj1maG9vZXJvb3RjYTEsQ049Q0RQLENOPVB1YmxpYyUyMEtl 223 # eSUyMFNlcnZpY2VzLENOPVNlcnZpY2VzLENOPUNvbmZpZ3VyYXRpb24sREM9Zmhv 224 # b2UsREM9YXQ/Y2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdD9iYXNlP29iamVjdENs 225 # YXNzPWNSTERpc3RyaWJ1dGlvblBvaW50hjBodHRwOi8vcGtpLnNydi5maC1vb2Uu 226 # YXQvcGtpL0ZIT09lUm9vdENBMSgxKS5jcmwwggEGBggrBgEFBQcBAQSB+TCB9jCB 227 # qAYIKwYBBQUHMAKGgZtsZGFwOi8vL0NOPUZIT09lUm9vdENBMSxDTj1BSUEsQ049 228 # UHVibGljJTIwS2V5JTIwU2VydmljZXMsQ049U2VydmljZXMsQ049Q29uZmlndXJh 229 # dGlvbixEQz1maG9vZSxEQz1hdD9jQUNlcnRpZmljYXRlP2Jhc2U/b2JqZWN0Q2xh 230 # c3M9Y2VydGlmaWNhdGlvbkF1dGhvcml0eTBJBggrBgEFBQcwAoY9aHR0cDovL3Br 231 # aS5zcnYuZmgtb29lLmF0L3BraS9maG9vZXJvb3RjYTFfRkhPT2VSb290Q0ExKDEp 232 # LmNydDANBgkqhkiG9w0BAQsFAAOCAgEAY3YxOVWln3QrOR5q01Uv7YHi0EI3dIIi 233 # qk0f1TW1694O/Q6Rm2vpBeP+jrZXLtyyivgBdx0Vc2UPjvjj5v/uImqjVvnUUCjU 234 # PYcV00UYT6pEzwXHu82rRwbaF8KreNzUIliJlrwG9sJ0TvnpNObsY0SwFElUhq/g 235 # cFRDJ38yVNPBOEDtKm+VlYF09LWs9xVw8JZk8K3xYSSlXy9sZQqTklFlL7dsb75h 236 # MYJEzohQgbr0mfwINEi52DcwU4D6IqPv6HABC3L5hcr9g1eSQ6HLPb0NjIWYaSHg 237 # ESWlRrhrM6nEygoAfIJMtUj0h7IUvV/FhkxpDHpcy4Y4mSOvc4F8uMJBSrn605IT 238 # rH1bdTXd4U3F89MOkWuJQD+JAiISzWeRCZNl9ID0fOM4Cn7bbO9wFZEpHgdoOaCM 239 # kcwi9SMQ2pzceTiyGshmMfT+Qd1haqUk2KX9ZlDms46rfGZj+RyB1IZg5nkYJ/hC 240 # /lgU+M4fWa1vrGJuYtSf0UwBd9qdP6MbWEtFTj0d0LCPOA5Pw7p2m1p3HEMI6mcX 241 # 4Fi+KO6CIvlX+SKrZwIattLO3VQZqV68/W3fmyC2FYwfVUU/InwIDGx3hXR3i+zr 242 # t41t11bnp8B4Bhq7PXKgUEHuX0gcNE0o62HstYOf/U5HkCM+Ag43gFrR/RDwMq6L 243 # 7VxKws52ao8xggIHMIICAwIBATBVMD4xEjAQBgoJkiaJk/IsZAEZFgJhdDEVMBMG 244 # CgmSJomT8ixkARkWBWZob29lMREwDwYDVQQDEwhGSE9PZUNBMQITaAABOiCwISXg 245 # Y2j/KQABAAE6IDANBglghkgBZQMEAgEFAKCBhDAYBgorBgEEAYI3AgEMMQowCKAC 246 # gAChAoAAMBkGCSqGSIb3DQEJAzEMBgorBgEEAYI3AgEEMBwGCisGAQQBgjcCAQsx 247 # DjAMBgorBgEEAYI3AgEVMC8GCSqGSIb3DQEJBDEiBCBzUedLfOrfI8C+s+K6rJYY 248 # VhIOL3BMg83zouWpb+G6TTANBgkqhkiG9w0BAQEFAASCAQAF0ha6sm0rEfVTS6ot 249 # vyp0nokYc/jNw174T/jZgKM2g4t+TehmVgYZAiimkBCidURXpKaNf3URjmeGY2hA 250 # /Yl1oKG+kR0SmUgB1qryGqMIn1o0zXJKSY0XtahKFleDXFkhYCbLxr6Nq/i0Yfbd 251 # MsfX3soN/aG6N9bRq9RviS1K6O8X8S4ZWYKkdcf0LT5ANqVZukvHcgSCHCeo/osl 252 # 3EoTo/n1i2uo0z8MtrhMiqaKj0Rg48ZQtEO3ee/OGBFRDZcnptkSNpDOreyPFKx3 253 # 9TzLOHwdmFSC85eAtDt7ciWzoLA0Z2UrbKIRGrXDDRQRlvGgFOtf5dfQFJuMRwKy 254 # Qp84 255 # SIG # End signature block
Note: See TracChangeset
for help on using the changeset viewer.