Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit e1f22dc

Browse files
authored
Merge branch 'wilsonrljr:master' into feature_ridge
2 parents 125246c + 4e9fbd6 commit e1f22dc

File tree

107 files changed

+27195
-9747
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

107 files changed

+27195
-9747
lines changed

‎.github/workflows/python-package.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,9 @@ jobs:
1818
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"]
1919

2020
steps:
21-
- uses: actions/checkout@v2
21+
- uses: actions/checkout@v4
2222
- name: Set up Python ${{ matrix.python-version }}
23-
uses: actions/setup-python@v2
23+
uses: actions/setup-python@v4
2424
with:
2525
python-version: ${{ matrix.python-version }}
2626
- name: Install dependencies

‎.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ pip-wheel-metadata
3232

3333
# VS Code
3434
.vscode
35-
35+
.pylintrc
3636
# default pytest cache directory
3737
*/.pytest_cache
3838
.pytest_cache/

‎CHANGELOG

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,65 @@ File for tracking changes in SysIdentPy
55
Changes in SysIdentPy
66
=====================
77

8+
v0.3.4
9+
------
10+
11+
CONTRIBUTORS
12+
~~~~~~~~~~~~
13+
14+
- wilsonrljr
15+
- dj-gauthier
16+
17+
CHANGES
18+
~~~~~~~
19+
20+
- The update **v0.3.4** has been released with additional features, API changes and fixes.
21+
22+
- MAJOR: Ridge Regression Parameter Estimation:
23+
- Now you can use AILS to estimate parameters of NARMAX models (and variants) using a multiobjective approach.
24+
- AILS can be accessed using `from sysidentpy.multiobjective_parameter_estimation import AILS`
25+
- See the docs for a more in depth explanation of how to use AILS.
26+
- This feature is related to Issue #101. This work is the result of an undergraduate research conducted by Gabriel Bueno Leandro under the supervision of Samir Milani Martins and Wilson Rocha Lacerda Junior.
27+
28+
- API Change: plotting.py code was improved. Added type hints and added new options for plotting results.
29+
30+
- DATASET: Added buck_id.csv and buck_valid.csv dataset to SysIdentPy repository.
31+
32+
- DOC: Add a Multiobjective Parameter Optimization Notebook showing how to use the new AILS method
33+
34+
- DOC: Minor additions and grammar fixes.
35+
36+
37+
v0.3.3
38+
------
39+
40+
CONTRIBUTORS
41+
~~~~~~~~~~~~
42+
43+
- wilsonrljr
44+
- gamcorn
45+
- Gabo-Tor
46+
47+
CHANGES
48+
~~~~~~~
49+
50+
- The update **v0.3.3** has been released with additional features, API changes and fixes.
51+
52+
- MAJOR: Multiobjective Framework: Affine Information Least Squares Algorithm (AILS)
53+
- Now you can use AILS to estimate parameters of NARMAX models (and variants) using a multiobjective approach.
54+
- AILS can be accessed using `from sysidentpy.multiobjective_parameter_estimation import AILS`
55+
- See the docs for a more in depth explanation of how to use AILS.
56+
- This feature is related to Issue #101. This work is the result of an undergraduate research conducted by Gabriel Bueno Leandro under the supervision of Samir Milani Martins and Wilson Rocha Lacerda Junior.
57+
58+
- API Change: `regressor_code` variable was renamed as `encoding` to avoid using the same name as the method in `narmax_tool` `regressor_code` method.
59+
60+
- DATASET: Added buck_id.csv and buck_valid.csv dataset to SysIdentPy repository.
61+
62+
- DOC: Add a Multiobjective Parameter Optimization Notebook showing how to use the new AILS method
63+
64+
- DOC: Minor additions and grammar fixes.
65+
66+
867
v0.3.2
968
------
1069

‎README.md

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
<p align="center">
1+
<div align="center">
22
<img src="images/sysidentpy-logo.svg" width="640" height="320" />
3-
</p>
43

54
[![DOI](https://img.shields.io/badge/DOI-10.21105%2Fjoss.02384-%23FF7800)](https://joss.theoj.org/papers/10.21105/joss.02384)
65
[![PyPI version](https://img.shields.io/pypi/v/sysidentpy?color=%23ff7800)](https://pypi.org/project/sysidentpy/)
@@ -12,9 +11,14 @@
1211
[![status](https://img.shields.io/pypi/status/sysidentpy?color=%23FF7800)](https://pypi.org/project/sysidentpy/)
1312
[![discord](https://img.shields.io/discord/711610087700955176?color=%23FF7800&label=discord)](https://discord.gg/7afBSzU4)
1413
[![contributors](https://img.shields.io/github/contributors/wilsonrljr/sysidentpy?color=%23FF7800)](https://github.com/wilsonrljr/sysidentpy/graphs/contributors)
15-
[![forks](https://img.shields.io/github/forks/wilsonrljr/sysidentpy?style=social)](https://github.com/wilsonrljr/sysidentpy/network/members)
1614
[![stars](https://img.shields.io/github/stars/wilsonrljr/sysidentpy?style=social)](https://github.com/wilsonrljr/sysidentpy/stargazers)
1715

16+
<h1 align="center"> NARMAX Methods In The Time Domain </h1>
17+
<h3 align="center">From Classical Approaches to Neural Networks</h3>
18+
19+
**SysIdentPy** offers State of the Art techniques to build your NARMAX models, including it's variants `NARX`, `NARMA`, `NAR`, `NFIR`, `ARMAX`, `ARX`, `ARMA` and others. It also includes tons of interesting examples to help you build nonlinear forecasting models using SysIdentPy.
20+
21+
</div>
1822

1923
## What is SysIdentPy?
2024

@@ -31,7 +35,7 @@ pip install sysidentpy
3135

3236
### Requirements
3337

34-
SysIdentPy requires:
38+
`SysIdentPy` requires:
3539

3640
- Python (>= 3.7)
3741
- NumPy (>= 1.9.2) for all numerical algorithms
@@ -54,6 +58,7 @@ A few examples require pandas >= 0.18.0. However, it is not required to use SysI
5458
| Model Structure Selection | Easy-to-use methods to select the best terms to build your models, including FROLS and MetaMSS and several combinations with parameter estimation techniques to select the model terms. |
5559
| Basis Function | You can use different basis functions to build your models. You can set linear and nonlinear basis functions and ensemble them to get custom NARMAX models. |
5660
| Parameter Estimation | More than 15 methods to estimate the model parameters and test different structure selection scenarios. |
61+
| Multiobjective Parameter Estimation | You can use affine information to estimate the model parameters minimizing different objective functions. |
5762
| Model Simulation | You can reproduce results from papers easily with SimulateNARMAX class. Moreover, you can test published models with different parameter estimation methods and compare the performance. |
5863
| Neural NARX | You can use SysIdentPy with Pytorch to create custom neural NARX models architectures which support all the optimizers and loss functions from Pytorch. |
5964
| General Estimators | You can use estimators from packages like scikit-learn, Catboost, and many other compatible interfaces and composition tools, to create NARMAX models. |
@@ -66,7 +71,7 @@ The project is actively maintained by Wilson R. L. Junior and looking for contri
6671

6772
## How do I use sysIdentPy?
6873

69-
The [SysIdentPy documentation](https://sysidentpy.org) includes 20 examples to help get you started:
74+
The [SysIdentPy documentation](https://sysidentpy.org) includes more than 20 examples to help get you started:
7075
- Typical "Hello World" example, for an [entry-level description of the main SysIdentPy concepts](https://sysidentpy.org/examples/basic_steps/)
7176
- A dedicated section focusing on SysIdentPy features, like model structure selection algorithms, basis functions, parameter estimation, and more.
7277
- A dedicated section focusing on use cases using SysIdentPy with real world datasets. Besides, there is some brief comparisons and benchmarks against other time series tools, like Prophet, Neural Prophet, ARIMA, and more.

‎docs/book/contents/index.html

Lines changed: 2 additions & 2 deletions
Large diffs are not rendered by default.

‎docs/book/preface.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,4 +26,8 @@ In addition to these resources, we will also reference Luis Antônio Aguirre `In
2626

2727
## Contribute
2828

29-
The `Nonlinear Dynamics: A Journey Through System Identification and Forecasting` is a comprehensive resource on the science of System Identification, offered as an open-source material. Our aim is to make this valuable resource accessible to all, both financially and intellectually. If you have found this book helpful and want to support our endeavor financially, you are referred to the Sponsor page. However, if you are not yet ready to contribute financially, you can still help us by pointing out typos, suggesting edits, or offering feedback on passages that you found difficult to comprehend. Simply navigate to the book's repository and open an issue. Lastly, if you enjoyed our content, please consider sharing it with others who may find it useful and leave us a star on GitHub.
29+
The `Nonlinear Dynamics: A Journey Through System Identification and Forecasting` is a comprehensive resource on the science of System Identification, offered as an open-source material. Our aim is to make this valuable resource accessible to all, both financially and intellectually. If you have found this book helpful and want to support our endeavor financially, you are referred to the Sponsor page. However, if you are not yet ready to contribute financially, you can still help us by pointing out typos, suggesting edits, or offering feedback on passages that you found difficult to comprehend. Simply navigate to the book's repository and open an issue. Lastly, if you enjoyed our content, please consider sharing it with others who may find it useful and leave us a star on GitHub.
30+
31+
## Note
32+
33+
The chapters will be released one by one until the book is complete.

‎docs/book/preface/index.html

Lines changed: 3 additions & 3 deletions
Large diffs are not rendered by default.

‎docs/book/preface/preface.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,4 +26,8 @@ In addition to these resources, we will also reference Luis Antônio Aguirre `In
2626

2727
## Contribute
2828

29-
The `Nonlinear Dynamics: A Journey Through System Identification and Forecasting` is a comprehensive resource on the science of System Identification, offered as an open-source material. Our aim is to make this valuable resource accessible to all, both financially and intellectually. If you have found this book helpful and want to support our endeavor financially, you are referred to the Sponsor page. However, if you are not yet ready to contribute financially, you can still help us by pointing out typos, suggesting edits, or offering feedback on passages that you found difficult to comprehend. Simply navigate to the book's repository and open an issue. Lastly, if you enjoyed our content, please consider sharing it with others who may find it useful and leave us a star on GitHub.
29+
The `Nonlinear Dynamics: A Journey Through System Identification and Forecasting` is a comprehensive resource on the science of System Identification, offered as an open-source material. Our aim is to make this valuable resource accessible to all, both financially and intellectually. If you have found this book helpful and want to support our endeavor financially, you are referred to the Sponsor page. However, if you are not yet ready to contribute financially, you can still help us by pointing out typos, suggesting edits, or offering feedback on passages that you found difficult to comprehend. Simply navigate to the book's repository and open an issue. Lastly, if you enjoyed our content, please consider sharing it with others who may find it useful and leave us a star on GitHub.
30+
31+
## Note
32+
33+
The chapters will be released one by one until the book is complete.

‎docs/changelog/changelog.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,33 @@ template: overrides/main.html
55

66
# Changes in SysIdentPy
77

8+
## v0.3.3
9+
10+
### CONTRIBUTORS
11+
12+
- wilsonrljr
13+
- GabrielBuenoLeandro
14+
- samirmartins
15+
16+
### CHANGES
17+
18+
- The update **v0.3.3** has been released with additional features, API changes and fixes.
19+
20+
- MAJOR: Multiobjective Framework: Affine Information Least Squares Algorithm (AILS)
21+
- Now you can use AILS to estimate parameters of NARMAX models (and variants) using a multiobjective approach.
22+
- AILS can be accessed using `from sysidentpy.multiobjective_parameter_estimation import AILS`
23+
- See the docs for a more in depth explanation of how to use AILS.
24+
- This feature is related to Issue #101. This work is the result of an undergraduate research conducted by Gabriel Bueno Leandro under the supervision of Samir Milani Martins and Wilson Rocha Lacerda Junior.
25+
- Several new methods were implemented to get the new feature and you can check all of it in sysidentpy -> multiobjective_parameter_estimation.
26+
27+
- API Change: `regressor_code` variable was renamed as `enconding` to avoid using the same name as the method in `narmax_tool` `regressor_code` method.
28+
29+
- DATASET: Added buck_id.csv and buck_valid.csv dataset to SysIdentPy repository.
30+
31+
- DOC: Add a Multiobjetive Parameter Optimization Notebook showing how to use the new AILS method
32+
33+
- DOC: Minor additions and grammar fixes.
34+
835
## v0.3.2
936

1037
### CONTRIBUTORS

‎docs/changelog/changelog/changelog.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,33 @@ template: overrides/main.html
55

66
# Changes in SysIdentPy
77

8+
## v0.3.3
9+
10+
### CONTRIBUTORS
11+
12+
- wilsonrljr
13+
- GabrielBuenoLeandro
14+
- samirmartins
15+
16+
### CHANGES
17+
18+
- The update **v0.3.3** has been released with additional features, API changes and fixes.
19+
20+
- MAJOR: Multiobjective Framework: Affine Information Least Squares Algorithm (AILS)
21+
- Now you can use AILS to estimate parameters of NARMAX models (and variants) using a multiobjective approach.
22+
- AILS can be accessed using `from sysidentpy.multiobjective_parameter_estimation import AILS`
23+
- See the docs for a more in depth explanation of how to use AILS.
24+
- This feature is related to Issue #101. This work is the result of an undergraduate research conducted by Gabriel Bueno Leandro under the supervision of Samir Milani Martins and Wilson Rocha Lacerda Junior.
25+
- Several new methods were implemented to get the new feature and you can check all of it in sysidentpy -> multiobjective_parameter_estimation.
26+
27+
- API Change: `regressor_code` variable was renamed as `enconding` to avoid using the same name as the method in `narmax_tool` `regressor_code` method.
28+
29+
- DATASET: Added buck_id.csv and buck_valid.csv dataset to SysIdentPy repository.
30+
31+
- DOC: Add a Multiobjetive Parameter Optimization Notebook showing how to use the new AILS method
32+
33+
- DOC: Minor additions and grammar fixes.
34+
835
## v0.3.2
936

1037
### CONTRIBUTORS

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /