mirror of
https://github.com/ejeanboris/MDAF.git
synced 2025-04-29 12:02:31 +00:00
debug
This commit is contained in:
4
.vscode/launch.json
vendored
4
.vscode/launch.json
vendored
@ -4,11 +4,13 @@
|
|||||||
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
||||||
"version": "0.2.0",
|
"version": "0.2.0",
|
||||||
"configurations": [
|
"configurations": [
|
||||||
|
|
||||||
{
|
{
|
||||||
"name": "Python: Module",
|
"name": "Python: Module",
|
||||||
"type": "python",
|
"type": "python",
|
||||||
"request": "launch",
|
"request": "launch",
|
||||||
"module": "MDAF"
|
"module": "MDAF",
|
||||||
|
"args": ["plotfuncs('@Bukin2', features)"]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Python: Current File",
|
"name": "Python: Current File",
|
||||||
|
6
.vscode/settings.json
vendored
6
.vscode/settings.json
vendored
@ -3,8 +3,6 @@
|
|||||||
"python.testing.pytestArgs": [
|
"python.testing.pytestArgs": [
|
||||||
"tests"
|
"tests"
|
||||||
],
|
],
|
||||||
"python.testing.unittestEnabled": false,
|
|
||||||
"python.testing.nosetestsEnabled": false,
|
|
||||||
"python.testing.pytestEnabled": true,
|
"python.testing.pytestEnabled": true,
|
||||||
"python.testing.unittestArgs": [
|
"python.testing.unittestArgs": [
|
||||||
"-v",
|
"-v",
|
||||||
@ -13,5 +11,7 @@
|
|||||||
"-p",
|
"-p",
|
||||||
"test_*.py"
|
"test_*.py"
|
||||||
],
|
],
|
||||||
"python.testing.cwd": "tests"
|
"python.testing.cwd": "",
|
||||||
|
"python.testing.nosetestsEnabled": false,
|
||||||
|
"python.testing.unittestEnabled": false
|
||||||
}
|
}
|
14
MDAF/MDAF.py
14
MDAF/MDAF.py
@ -269,5 +269,19 @@ def doe(heuristicpath, testfunctionpaths, args):
|
|||||||
#return the performance values
|
#return the performance values
|
||||||
return responses
|
return responses
|
||||||
|
|
||||||
|
def plotfuncs(funcpaths, features):
|
||||||
|
print ('help')
|
||||||
|
for i,funpath in enumerate(funcpaths):
|
||||||
|
if funpath.find('@') == 0:
|
||||||
|
funcpaths[i] = path.dirname(__file__) + '/TestFunctions/' + funpath[1:]
|
||||||
|
|
||||||
|
funcnames = [path.splitext(path.basename(funcpath))[0] for funcpath in funcpaths]
|
||||||
|
representations = {}
|
||||||
|
|
||||||
|
for idx,funpath in enumerate(funcpaths):
|
||||||
|
representations[funcnames[idx]] = representfunc(funpath)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# %%
|
# %%
|
||||||
|
15
MDAF/TestFunctions/Ackley2.py
Normal file
15
MDAF/TestFunctions/Ackley2.py
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
import math as m
|
||||||
|
|
||||||
|
def main(args):
|
||||||
|
|
||||||
|
'''
|
||||||
|
#_# dimmensions: 2
|
||||||
|
#_# upper: 32
|
||||||
|
#_# lower: -32
|
||||||
|
#_# minimum: [0, 0]
|
||||||
|
|
||||||
|
>>> main([0, 0])
|
||||||
|
-200.0
|
||||||
|
|
||||||
|
'''
|
||||||
|
return -200 * m.e**(-0.02 * m.sqrt(args[0]**2 + args[1]**2))
|
@ -5,6 +5,9 @@ import math
|
|||||||
def main(args):
|
def main(args):
|
||||||
'''
|
'''
|
||||||
#_# dimmensions: 2
|
#_# dimmensions: 2
|
||||||
|
#_# upper: 10
|
||||||
|
#_# lower: 0
|
||||||
|
#_# minimum: [0, 1.39325]
|
||||||
'''
|
'''
|
||||||
for x in args:
|
for x in args:
|
||||||
if(x<0 | x>10): return 0
|
if(x<0 | x>10): return 0
|
||||||
|
@ -4,6 +4,9 @@
|
|||||||
def main(args):
|
def main(args):
|
||||||
'''
|
'''
|
||||||
#_# dimmensions: 2
|
#_# dimmensions: 2
|
||||||
|
#_# upper: 1.2
|
||||||
|
#_# lower: -1.2
|
||||||
|
#_# minimum: [1, 1]
|
||||||
'''
|
'''
|
||||||
for x in args:
|
for x in args:
|
||||||
if x < -1.2 or x > 1.2:
|
if x < -1.2 or x > 1.2:
|
||||||
|
@ -5,7 +5,10 @@ def main(args):
|
|||||||
0.26
|
0.26
|
||||||
|
|
||||||
|
|
||||||
#_# dimmensions: 2
|
#_# dimmensions: 2
|
||||||
|
#_# upper: 10
|
||||||
|
#_# lower: -10
|
||||||
|
#_# minimum: [0, 0]
|
||||||
'''
|
'''
|
||||||
for x in args:
|
for x in args:
|
||||||
if x < -10 or x > 10:
|
if x < -10 or x > 10:
|
||||||
|
@ -1,10 +1,13 @@
|
|||||||
import math
|
import math
|
||||||
def main(args):
|
def main(args):
|
||||||
'''
|
'''
|
||||||
>>>main([-0.547, -1.547])
|
>>> main([-0.547, -1.547])
|
||||||
0
|
0
|
||||||
|
|
||||||
#_# dimmensions: 2
|
#_# dimmensions: 2
|
||||||
|
#_# upper: [4, 3]
|
||||||
|
#_# lower: [-1.5, -3]
|
||||||
|
#_# minimum: [-0.547, -1.547]
|
||||||
|
|
||||||
'''
|
'''
|
||||||
for args[0] in args:
|
for args[0] in args:
|
||||||
|
@ -3,10 +3,14 @@ import math
|
|||||||
|
|
||||||
def main(args):
|
def main(args):
|
||||||
'''
|
'''
|
||||||
>>>main([0, 1, 1, 1])
|
>>> main([0, 1, 1, 1])
|
||||||
0
|
0.0
|
||||||
|
|
||||||
|
#_# dimmensions: 4
|
||||||
|
#_# upper: 1
|
||||||
|
#_# lower: -1
|
||||||
|
#_# minimum: [0, 1, 1, 1]
|
||||||
|
|
||||||
#_# dimmensions: 4
|
|
||||||
'''
|
'''
|
||||||
for x in args:
|
for x in args:
|
||||||
if x < -1 or x > 1:
|
if x < -1 or x > 1:
|
||||||
|
@ -1,6 +0,0 @@
|
|||||||
{
|
|
||||||
"cells": [],
|
|
||||||
"metadata": {},
|
|
||||||
"nbformat": 4,
|
|
||||||
"nbformat_minor": 4
|
|
||||||
}
|
|
@ -0,0 +1,5 @@
|
|||||||
|
import pkgutil
|
||||||
|
|
||||||
|
__path__ = pkgutil.extend_path(__path__, __name__)
|
||||||
|
for importer, modname, ispkg in pkgutil.walk_packages(path=__path__, prefix=__name__+'.'):
|
||||||
|
__import__(modname)
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
tests/__pycache__/test_funcs.cpython-39-pytest-6.2.4.pyc
Normal file
BIN
tests/__pycache__/test_funcs.cpython-39-pytest-6.2.4.pyc
Normal file
Binary file not shown.
BIN
tests/__pycache__/test_unit.cpython-39-pytest-6.2.4.pyc
Normal file
BIN
tests/__pycache__/test_unit.cpython-39-pytest-6.2.4.pyc
Normal file
Binary file not shown.
21
tests/deprecated_funcs.py
Normal file
21
tests/deprecated_funcs.py
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
import unittest
|
||||||
|
import os
|
||||||
|
import importlib.util as utl
|
||||||
|
|
||||||
|
from MDAF.TestFunctions import *
|
||||||
|
import doctest
|
||||||
|
|
||||||
|
|
||||||
|
# Testing the test function representation workflow
|
||||||
|
def load_tests(loader, tests, ignore):
|
||||||
|
fullpath = 'MDAF/TestFunctions'
|
||||||
|
for func in os.scandir(fullpath):
|
||||||
|
name = str(func.name)
|
||||||
|
if(name.find('.py') and name.find('.old') == -1 and func.is_file() and name.find('__init__.py')==-1):
|
||||||
|
spec = utl.spec_from_file_location(name[-3], fullpath+'/'+name)
|
||||||
|
funcmodule = utl.module_from_spec(spec)
|
||||||
|
spec.loader.exec_module(funcmodule)
|
||||||
|
|
||||||
|
tests.addTests(doctest.DocTestSuite(funcmodule))
|
||||||
|
return tests
|
||||||
|
|
53
tests/deprecated_unit.py
Normal file
53
tests/deprecated_unit.py
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
import unittest
|
||||||
|
import doctest
|
||||||
|
import os
|
||||||
|
|
||||||
|
def load_tests(loader, tests, ignore):
|
||||||
|
fullpath = 'MDAF/TestFunctions'
|
||||||
|
testlist = []
|
||||||
|
for func in os.scandir(fullpath):
|
||||||
|
name = str(func.name)
|
||||||
|
if(name.find('.py') and name.find('.old') == -1 and func.is_file()):
|
||||||
|
spec = importlib.util.spec_from_file_location(name, fullpath)
|
||||||
|
funcmodule = importlib.util.module_from_spec(spec)
|
||||||
|
spec.loader.exec_module(funcmodule)
|
||||||
|
|
||||||
|
tests.addTests(doctest.DocTestSuite(funcmodule))
|
||||||
|
return tests
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
runner = unittest.TextTestRunner()
|
||||||
|
runner.run(load_tests())
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
import unittest
|
||||||
|
import os
|
||||||
|
|
||||||
|
|
||||||
|
from MDAF.TestFunctions import *
|
||||||
|
import doctest
|
||||||
|
|
||||||
|
|
||||||
|
#target = __import__("MDAF.py")
|
||||||
|
|
||||||
|
# Testing the test function representation workflow
|
||||||
|
def load_tests(loader, tests, ignore):
|
||||||
|
|
||||||
|
fullpath = 'MDAF/TestFunctions'
|
||||||
|
testlist = []
|
||||||
|
for func in os.scandir(fullpath):
|
||||||
|
name = str(func.name)
|
||||||
|
if(name.find('.py') and name.find('.old') == -1 and func.is_file()):
|
||||||
|
curtest = doctest.DocTestSuite(os.path.relpath('../'+func.path[:-3]+'.main.__module__'))
|
||||||
|
testlist.append(curtest)
|
||||||
|
tests.addTests(testlist)
|
||||||
|
|
||||||
|
tests.addTests(doctest.DocTestSuite(Ackley2.main.__module__))
|
||||||
|
for t in tests: return t
|
||||||
|
|
||||||
|
# run the suite
|
||||||
|
suite = load_tests(loader, tests, ignore)
|
||||||
|
runner = unittest.TextTestRunner()
|
||||||
|
runner.run(suite)
|
@ -4,6 +4,7 @@ import os
|
|||||||
from MDAF.MDAF import representfunc
|
from MDAF.MDAF import representfunc
|
||||||
from MDAF.MDAF import installFalcoo
|
from MDAF.MDAF import installFalcoo
|
||||||
from MDAF.MDAF import doe
|
from MDAF.MDAF import doe
|
||||||
|
from MDAF.TestFunctions import *
|
||||||
|
|
||||||
#target = __import__("MDAF.py")
|
#target = __import__("MDAF.py")
|
||||||
|
|
||||||
@ -32,11 +33,12 @@ class Test_representfunc(unittest.TestCase):
|
|||||||
Test that the function can calculate the representation and write to the function docstring
|
Test that the function can calculate the representation and write to the function docstring
|
||||||
"""
|
"""
|
||||||
funcpath = '@Bukin2.py'
|
funcpath = '@Bukin2.py'
|
||||||
|
funcverify = 'MDAF/TestFunctions/Bukin2.py'
|
||||||
#funcpath_backup = 'tests/Bukin2.py.old'
|
#funcpath_backup = 'tests/Bukin2.py.old'
|
||||||
|
|
||||||
results = representfunc(funcpath, forced = True)
|
results = representfunc(funcpath, forced = True)
|
||||||
|
|
||||||
with open(funcpath,"r") as file:
|
with open(funcverify,"r") as file:
|
||||||
content = file.read()
|
content = file.read()
|
||||||
reprCheck = bool(content.find('#_# Represented: 1'))
|
reprCheck = bool(content.find('#_# Represented: 1'))
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user