Spaces:
Running
Running
Commit
·
9fa51a8
1
Parent(s):
95a2a34
Fix bug with Int32 rounding of equation age
Browse files- README.md +1 -0
- julia/sr.jl +3 -3
- setup.py +1 -1
README.md
CHANGED
|
@@ -327,6 +327,7 @@ pd.DataFrame, Results dataframe, giving complexity, MSE, and equations
|
|
| 327 |
## Algorithmic performance ideas:
|
| 328 |
|
| 329 |
- [ ] Idea: use gradient of equation with respect to each operator (perhaps simply add to each operator) to tell which part is the most "sensitive" to changes. Then, perhaps insert/delete/mutate on that part of the tree?
|
|
|
|
| 330 |
- [ ] Consider adding mutation for constant<->variable
|
| 331 |
- [ ] Implement more parts of the original Eureqa algorithms: https://www.creativemachineslab.com/eureqa.html
|
| 332 |
- [ ] Experiment with freezing parts of model; then we only append/delete at end of tree.
|
|
|
|
| 327 |
## Algorithmic performance ideas:
|
| 328 |
|
| 329 |
- [ ] Idea: use gradient of equation with respect to each operator (perhaps simply add to each operator) to tell which part is the most "sensitive" to changes. Then, perhaps insert/delete/mutate on that part of the tree?
|
| 330 |
+
- [ ] Start populations staggered; so that there is more frequent printing (and pops that start a bit later get hall of fame already)?
|
| 331 |
- [ ] Consider adding mutation for constant<->variable
|
| 332 |
- [ ] Implement more parts of the original Eureqa algorithms: https://www.creativemachineslab.com/eureqa.html
|
| 333 |
- [ ] Experiment with freezing parts of model; then we only append/delete at end of tree.
|
julia/sr.jl
CHANGED
|
@@ -41,8 +41,8 @@ function debug(verbosity, string...)
|
|
| 41 |
verbosity > 0 ? println(string...) : nothing
|
| 42 |
end
|
| 43 |
|
| 44 |
-
function getTime()::
|
| 45 |
-
return round(
|
| 46 |
end
|
| 47 |
|
| 48 |
# Define a serialization format for the symbolic equations:
|
|
@@ -526,7 +526,7 @@ end
|
|
| 526 |
mutable struct PopMember
|
| 527 |
tree::Node
|
| 528 |
score::Float32
|
| 529 |
-
birth::
|
| 530 |
|
| 531 |
PopMember(t::Node) = new(t, scoreFunc(t), getTime())
|
| 532 |
PopMember(t::Node, score::Float32) = new(t, score, getTime())
|
|
|
|
| 41 |
verbosity > 0 ? println(string...) : nothing
|
| 42 |
end
|
| 43 |
|
| 44 |
+
function getTime()::Integer
|
| 45 |
+
return round(Integer, 1e3*(time()-1.6e9))
|
| 46 |
end
|
| 47 |
|
| 48 |
# Define a serialization format for the symbolic equations:
|
|
|
|
| 526 |
mutable struct PopMember
|
| 527 |
tree::Node
|
| 528 |
score::Float32
|
| 529 |
+
birth::Integer
|
| 530 |
|
| 531 |
PopMember(t::Node) = new(t, scoreFunc(t), getTime())
|
| 532 |
PopMember(t::Node, score::Float32) = new(t, score, getTime())
|
setup.py
CHANGED
|
@@ -5,7 +5,7 @@ with open("README.md", "r") as fh:
|
|
| 5 |
|
| 6 |
setuptools.setup(
|
| 7 |
name="pysr", # Replace with your own username
|
| 8 |
-
version="0.3.
|
| 9 |
author="Miles Cranmer",
|
| 10 |
author_email="miles.cranmer@gmail.com",
|
| 11 |
description="Simple and efficient symbolic regression",
|
|
|
|
| 5 |
|
| 6 |
setuptools.setup(
|
| 7 |
name="pysr", # Replace with your own username
|
| 8 |
+
version="0.3.18",
|
| 9 |
author="Miles Cranmer",
|
| 10 |
author_email="miles.cranmer@gmail.com",
|
| 11 |
description="Simple and efficient symbolic regression",
|