You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: WOC/README.md
+15-8Lines changed: 15 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,9 +17,9 @@ Working on AI/ML involves working with a wide range of specialized tools—rangi
17
17
3.3 [Python Implementation of Gradient Descent Algorithm for Solving PortPy Optimization Problems](#PyGrad)
18
18
3.4 [Python Implementation of the ADMM Algorithm for PortPy Optimization Problems](#PyADMM)
19
19
20
-
### 4. CI/CD package dissemination (website documentation and unit testing) (2 projects)
21
-
4.1 [Creating a Documentation Website with CI/CD Features for PortPy](#website)
22
-
4.2 [Creating Unit Tests with CI/CD Features for PortPy](#unittest)
20
+
### 4. Creating a Documentation Website and Automated Unit Testing using GitOps CI/CD Features (2 projects)
21
+
4.1 [Creating a Documentation Website with GitOps CI/CD Features for PortPy](#website)
22
+
4.2 [Creating Unit Tests with GitOps CI/CD Features for PortPy](#unittest)
23
23
24
24
<br/>
25
25
@@ -77,6 +77,7 @@ Current State: MLC movements are currently displayed as a series of static Matpl
77
77
<h3id="dose"> 1.3 Interactive Image Slice Navigation of CT Scan and Radiation Dose Map </h3>
78
78
79
79
**Requirements:** Matplotlib, Plotly or PyVista
80
+
80
81
**Good to Know:** PyQt
81
82
82
83
**Short description:**
@@ -150,6 +151,7 @@ Current Status: The PortPy.AI module currently implements a dose prediction pipe
150
151
<h3id="JaxOpt"> 3.1 Using Google's Jax.Opt to Solve PortPy Optimization Problems </h3>
151
152
152
153
**Requirements:** Proficiency in Python/NumPy, familiarity with optimization algorithms
154
+
153
155
**Good to Know:** Jax.Opt, SciPy
154
156
155
157
**Short description:**
@@ -167,6 +169,7 @@ Current Status: PortPy currently uses the open-source library [CVXPy](https://ww
167
169
<h3id="SciPy"> 3.2 Using SciPy.Optimize to Solve PortPy Optimization Problems </h3>
168
170
169
171
**Requirements:** Proficiency in Python, NumPy, SciPy
172
+
170
173
**Good to Know:** optimization algorithms
171
174
172
175
**Short description:**
@@ -180,6 +183,7 @@ This project is similar to the previous one, however, instead of Jax.Opt, we wou
180
183
<h3id="PyGrad"> 3.3 Python Implementation of Gradient Descent Algorithm for Solving PortPy Optimization Problems </h3>
181
184
182
185
**Requirements:** Proficiency in Python, Gradient Descent Algorithm, NumPy
186
+
183
187
**Good to Know:** JAX
184
188
185
189
**Short description:**
@@ -194,6 +198,7 @@ This project is similar to the previous ones; however, instead of relying on exi
194
198
<h3id="PyADMM"> 3.4 Python Implementation of the ADMM Algorithm for PortPy Optimization Problems </h3>
195
199
196
200
**Requirements:** Proficiency in Python, ADMM
201
+
197
202
**Good to Know:** JAX, CUDA, PyTorch, optimization techniques
198
203
199
204
**Short description:**
@@ -206,14 +211,15 @@ This project is similar to the previous one; however, instead of using gradient
206
211
<br/>
207
212
208
213
209
-
## 4. CI/CD package dissemination (website documentation and unit testing)
214
+
## 4. Creating documentation website and unit testing using GitOps CI/CD featurs
210
215
<h3id="website"> 4.1 Creating a Documentation Website with CI/CD Features for PortPy </h3>
211
216
212
217
**Requirements:** Markdown
218
+
213
219
**Good to Know:** reStructuredText, Sphinx, CI/CD
214
220
215
221
**Short description:**
216
-
Design and build a documentation website for PortPy using the Sphinx tool (see [YouTube-Sphinx-Crash-Course](https://www.youtube.com/watch?v=UourHBDZuR0) for a brief introduction). The website will resemble the [CVXPy-Website](https://www.cvxpy.org/) website but will feature different content (see the figures below for our initial website sketch). Ideally, we aim to incorporate modern CI/CD technology to enable easy and automated website updates in the future.
222
+
Design and build a documentation website for PortPy using the Sphinx tool (see [YouTube-Sphinx-Crash-Course](https://www.youtube.com/watch?v=UourHBDZuR0) for a brief introduction). The website will resemble the [CVXPy-Website](https://www.cvxpy.org/) website but will feature different content (see the figures below for our initial website sketch). Ideally, we aim to incorporate modern GitOps CI/CD technology to enable easy and automated website updates in the future.
217
223
218
224

219
225

@@ -228,16 +234,17 @@ Design and build a documentation website for PortPy using the Sphinx tool (see [
228
234
<br/>
229
235
230
236
231
-
<h3id="unittest"> 4.2 Creating Unit Tests with CI/CD Features for PortPy </h3>
237
+
<h3id="unittest"> 4.2 Creating Unit Tests with GitOps CI/CD Features for PortPy </h3>
232
238
233
239
**Requirements:** Python
240
+
234
241
**Good to Know:** PyTest, CI/CD
235
242
236
243
**Short description:**
237
-
Develop automated unit tests using the PyTest framework and few patients from the PortPy dataset. Additionally, integrate CI/CD technology to enable automatic testing for new releases, ensuring continuous quality and reliability of the PortPy project.
244
+
Develop automated unit tests using the PyTest framework and few patients from the PortPy dataset. Additionally, integrate GitOps CI/CD technology to enable automatic testing for new releases, ensuring continuous quality and reliability of the PortPy project.
238
245
239
246
**Project Outcome:**
240
-
- Implementation of unit tests integrated with CI/CD technology to ensure continuous quality checks for new releases.
247
+
- Implementation of unit tests integrated with GitOps CI/CD technology to ensure continuous quality checks for new releases.
0 commit comments