sigmoid.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
A social space for people researching, working with, or just interested in AI!

Server stats:

583
active users

#pyomo

0 posts0 participants0 posts today
EuroSciPy<p>🎓 New to Mixed-Integer Programming or looking to level up your optimization skills?</p><p>Join Florian Wilhelm’s talk:<br>“Solving Hard Optimization Problems with Pyomo and HiGHS”<br>Learn how <a href="https://fosstodon.org/tags/Pyomo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Pyomo</span></a> and <a href="https://fosstodon.org/tags/HiGHS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>HiGHS</span></a> combine to solve real-world MIP problems like scheduling and logistics.</p><p>Ideal for anyone in <a href="https://fosstodon.org/tags/Python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Python</span></a>, <a href="https://fosstodon.org/tags/OperationsResearch" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OperationsResearch</span></a>, and <a href="https://fosstodon.org/tags/OpenScience" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OpenScience</span></a>.</p><p>📅 Check out our schedule: <a href="https://euroscipy.org/schedule/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">euroscipy.org/schedule/</span><span class="invisible"></span></a> <br>🎟️ Get your ticket here: <a href="https://euroscipy.org/tickets/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">euroscipy.org/tickets/</span><span class="invisible"></span></a> </p><p><a href="https://fosstodon.org/tags/EuroSciPy" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>EuroSciPy</span></a> <a href="https://fosstodon.org/tags/Python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Python</span></a> <a href="https://fosstodon.org/tags/Optimization" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Optimization</span></a> <a href="https://fosstodon.org/tags/OpenSource" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OpenSource</span></a></p>
Solver Max<p>Locational marginal pricing of potatoes</p><p>We apply Locational Marginal Pricing (LMP) to the supply of potatoes. The article describes the model, calculation of LMPs, and scenarios for how the suppliers and contractors may respond to the price signals.<br><a href="https://mathstodon.xyz/tags/orms" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orms</span></a> <a href="https://mathstodon.xyz/tags/pyomo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>pyomo</span></a><br><a href="https://www.solvermax.com/blog/locational-marginal-pricing-of-potatoes" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">solvermax.com/blog/locational-</span><span class="invisible">marginal-pricing-of-potatoes</span></a></p>
Solver Max<p>Permission granted: A role mining model </p><p>We implement a recently published role mining model using both constraint programming and mixed integer linear programming, then compare their relative performance while solving several examples.<br><a href="https://www.solvermax.com/blog/permission-granted-a-role-mining-model" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">solvermax.com/blog/permission-</span><span class="invisible">granted-a-role-mining-model</span></a><br><a href="https://mathstodon.xyz/tags/orms" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orms</span></a> <a href="https://mathstodon.xyz/tags/pyomo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>pyomo</span></a> <a href="https://mathstodon.xyz/tags/ortools" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ortools</span></a> <a href="https://mathstodon.xyz/tags/python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>python</span></a></p>
Solver Max<p>Article: Well, that escalated quickly: Random search</p><p>In this series of articles, we look at a simple optimization situation that requires deciding the best order for positioning devices in a rack.</p><p>This article discusses Model 2, which uses a random search method running in parallel. Does it perform better than the enumeration method of Model 1?</p><p>Along the way, we asked Claude AI to help with some of the programming. Claude was useful, though the experience was somewhat mixed.</p><p><a href="https://www.solvermax.com/blog/well-that-escalated-quickly-random-search" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">solvermax.com/blog/well-that-e</span><span class="invisible">scalated-quickly-random-search</span></a><br><a href="https://mathstodon.xyz/tags/Python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Python</span></a> <a href="https://mathstodon.xyz/tags/pyomo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>pyomo</span></a> <a href="https://mathstodon.xyz/tags/orms" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orms</span></a> <a href="https://mathstodon.xyz/tags/optimization" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>optimization</span></a> <a href="https://mathstodon.xyz/tags/modelling" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>modelling</span></a> <a href="https://mathstodon.xyz/tags/ClaudeAI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ClaudeAI</span></a></p>
Solver Max<p>Article: Well, that escalated quickly: Enumeration</p><p>In this series of articles, we look at a simple situation that requires deciding the best order for positioning devices in a rack. We use four methods for solving this problem:<br>- Model 1. Enumerate all possible position orders.<br>- Model 2. Search randomly for a specified time.<br>- Model 3. Constraint programming using OR-Tools.<br>- Model 4. Mixed integer linear programming using Pyomo.</p><p>Along the way, we see how a problem's size can quickly escalate to a colossal magnitude. We also demonstrate how, contrary to popular belief, that magnitude is not necessarily a barrier to finding a good solution.</p><p>We start with Model 1. The other models will follow.</p><p><a href="https://www.solvermax.com/blog/well-that-escalated-quickly-enumeration" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">solvermax.com/blog/well-that-e</span><span class="invisible">scalated-quickly-enumeration</span></a><br><a href="https://mathstodon.xyz/tags/Python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Python</span></a> <a href="https://mathstodon.xyz/tags/pyomo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>pyomo</span></a> <a href="https://mathstodon.xyz/tags/orms" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orms</span></a> <a href="https://mathstodon.xyz/tags/optimization" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>optimization</span></a> <a href="https://mathstodon.xyz/tags/modelling" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>modelling</span></a></p>
Solver Max<p>Article: Formulations for modelling an IF function</p><p>When formulating an optimization model, a common question is "How do I express an IF function as a constraint?". Linear programs can't represent an IF function directly, so we need to use some linearization tricks to achieve the behaviour we want.</p><p>In this article, we examine the answers to a question on Operations Research Stack Exchange: Linear condition between two continuous variables. </p><p>Three answers are provided on Stack Exchange:</p><p>- Formulation 1. A special case method that has the advantage of being a pure linear program, though it works correctly only when the model has a specific form of objective function.<br>- Formulation 2. Uses a BigM approach that would normally work, but the answer has a subtle error.<br>- Formulation 3. Essentially the same as Formulation 2, except that it is correct.</p><p>We illustrate each of the methods both mathematically and graphically, to show how they are intended to mimic the required IF statements.</p><p>In addition, we derive a formulation from the more general situation for the constraint x = max(y, z).</p><p><a href="https://www.solvermax.com/blog/formulations-for-modelling-an-if-function" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">solvermax.com/blog/formulation</span><span class="invisible">s-for-modelling-an-if-function</span></a><br><a href="https://mathstodon.xyz/tags/Python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Python</span></a> <a href="https://mathstodon.xyz/tags/pyomo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>pyomo</span></a> <a href="https://mathstodon.xyz/tags/orms" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orms</span></a> <a href="https://mathstodon.xyz/tags/optimization" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>optimization</span></a> <a href="https://mathstodon.xyz/tags/modelling" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>modelling</span></a></p>
Solver Max<p>Article: 10 times faster, running cases in parallel </p><p>In this article, we explore running optimization model cases in parallel. Specifically, we use the Python multiprocessing and mpi4py libraries to fully use the many CPU cores/threads in modern computers.</p><p>Our goals are to:<br>- Illustrate how to apply the multiprocessing and mpi4py libraries to running optimization model cases in parallel.<br>- Measure the performance of running cases in parallel compared with serially.<br>- Compare the performance of an old 4 core / 4 thread CPU with a new 20 core / 28 thread CPU, using the HiGHS solver.</p><p><a href="https://www.solvermax.com/blog/10-times-faster-running-cases-in-parallel" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">solvermax.com/blog/10-times-fa</span><span class="invisible">ster-running-cases-in-parallel</span></a><br><a href="https://mathstodon.xyz/tags/Python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Python</span></a> <a href="https://mathstodon.xyz/tags/pyomo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>pyomo</span></a> <a href="https://mathstodon.xyz/tags/orms" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orms</span></a> <a href="https://mathstodon.xyz/tags/optimization" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>optimization</span></a> <a href="https://mathstodon.xyz/tags/modelling" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>modelling</span></a> <a href="https://mathstodon.xyz/tags/HiGHS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>HiGHS</span></a> <a href="https://mathstodon.xyz/tags/multiprocessing" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>multiprocessing</span></a> <a href="https://mathstodon.xyz/tags/mpi4py" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>mpi4py</span></a></p>
Solver Max<p>Warehouse space for free: Exogenous enumeration</p><p>In this article series, we look at improving the efficiency of a pallet warehouse, where all items are stored on standard-size pallets.</p><p>In part 3 of 3, we make some variables exogenous and enumerate all of their combinations. The goal is to make the model solvable at full scale in a reasonable time.</p><p>The result is a 200 times improvement in model performance, leading to a 40% improvement in warehouse storage efficiency.</p><p>The model is built in Python using Pyomo, and solved with either the Gurobi or HiGHS solvers.</p><p><a href="https://www.solvermax.com/blog/warehouse-space-for-free-exogenous-enumeration" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">solvermax.com/blog/warehouse-s</span><span class="invisible">pace-for-free-exogenous-enumeration</span></a><br><a href="https://mathstodon.xyz/tags/Python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Python</span></a> <a href="https://mathstodon.xyz/tags/pyomo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>pyomo</span></a> <a href="https://mathstodon.xyz/tags/orms" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orms</span></a> <a href="https://mathstodon.xyz/tags/optimization" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>optimization</span></a> <a href="https://mathstodon.xyz/tags/modelling" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>modelling</span></a> <a href="https://mathstodon.xyz/tags/Gurobi" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Gurobi</span></a> <a href="https://mathstodon.xyz/tags/HiGHS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>HiGHS</span></a></p>
Solver Max<p>Warehouse space for free: Linearized model</p><p>In this article series, we look at improving the efficiency of a pallet warehouse, where all items are stored on standard-size pallets.</p><p>In part 2 we linearize our model to, hopefully, make it easier to solve.</p><p>The model is built in Python using Pyomo.</p><p><a href="https://www.solvermax.com/blog/warehouse-space-for-free-linearized-model" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">solvermax.com/blog/warehouse-s</span><span class="invisible">pace-for-free-linearized-model</span></a><br><a href="https://mathstodon.xyz/tags/Python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Python</span></a> <a href="https://mathstodon.xyz/tags/pyomo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>pyomo</span></a> <a href="https://mathstodon.xyz/tags/orms" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orms</span></a> <a href="https://mathstodon.xyz/tags/optimization" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>optimization</span></a> <a href="https://mathstodon.xyz/tags/modelling" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>modelling</span></a> <a href="https://mathstodon.xyz/tags/Gurobi" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Gurobi</span></a> <a href="https://mathstodon.xyz/tags/HiGHS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>HiGHS</span></a></p>
Solver Max<p>In this article series, we look at improving the efficiency of a pallet warehouse, where all items are stored on standard-size pallets.</p><p>Along the way, we:<br>- Formulate a non-linear model of the situation.<br>- Compare several solvers, to see how they perform.<br>- Linearize our model to, hopefully, make it easier to solve.<br>- Disaggregate our model to make some variables exogenous, then iterate over an enumeration of the exogenous variables.<br>- Demonstrate use of Pyomo's last() and next() functions, which enable us to work with elements of ordered sets.<br>- Turn off a constraint using Pyomo's deactivate() function.</p><p>Importantly, we show that there's a surprising amount of extra storage space available for free, or minimal cost, just by redesigning the warehouse's racks and shelves.</p><p>The model is built in Python using Pyomo.</p><p><a href="https://www.solvermax.com/blog/warehouse-space-for-free-non-linear-model" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">solvermax.com/blog/warehouse-s</span><span class="invisible">pace-for-free-non-linear-model</span></a></p><p><a href="https://mathstodon.xyz/tags/Python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Python</span></a> <a href="https://mathstodon.xyz/tags/pyomo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>pyomo</span></a> <a href="https://mathstodon.xyz/tags/orms" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orms</span></a> <a href="https://mathstodon.xyz/tags/optimization" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>optimization</span></a> <a href="https://mathstodon.xyz/tags/modelling" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>modelling</span></a> <a href="https://mathstodon.xyz/tags/Gurobi" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Gurobi</span></a></p>
Solver Max<p>Blog: Running up the wrong hill</p><p>We explore some aspects of solver behaviour when solving non-linear optimization models.</p><p>Our goal is to provide insights into what the solvers are doing, why they may find different solutions, and how we can improve our chances of finding at least a good, and hopefully a globally optimal, solution.</p><p>The model is built in Python using Pyomo.</p><p><a href="https://www.solvermax.com/blog/running-up-the-wrong-hill" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">solvermax.com/blog/running-up-</span><span class="invisible">the-wrong-hill</span></a></p><p><a href="https://mathstodon.xyz/tags/Python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Python</span></a> <a href="https://mathstodon.xyz/tags/pyomo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>pyomo</span></a> <a href="https://mathstodon.xyz/tags/orms" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orms</span></a> <a href="https://mathstodon.xyz/tags/optimization" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>optimization</span></a> <a href="https://mathstodon.xyz/tags/modelling" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>modelling</span></a></p>
nextmv<p>Many awesome projects and people underpin the optimization world. We're making mvs to surface more open source model code for real-world impact and better support individual decision modelers. <span class="h-card" translate="no"><a href="https://sigmoid.social/@ryanjoneil" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>ryanjoneil</span></a></span> explains: <a href="https://www.nextmv.io/blog/new-decision-apps-an-open-source-decision-model-hub-and-an-individual-plan" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">nextmv.io/blog/new-decision-ap</span><span class="invisible">ps-an-open-source-decision-model-hub-and-an-individual-plan</span></a> <br> <br><a href="https://techhub.social/tags/orms" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orms</span></a> <a href="https://techhub.social/tags/decisionscience" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>decisionscience</span></a> <a href="https://techhub.social/tags/datascience" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>datascience</span></a> <a href="https://techhub.social/tags/decisionops" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>decisionops</span></a> <a href="https://techhub.social/tags/pyomo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>pyomo</span></a> <a href="https://techhub.social/tags/ortools" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ortools</span></a></p>
nextmv<p>ICYMI: 15-minute <a href="https://techhub.social/tags/Pyomo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Pyomo</span></a> demo <br>→ Create, deploy, run custom shift assignment app<br>→ Merge code, kick off <a href="https://techhub.social/tags/cicd" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cicd</span></a>, run acceptance test<br>→ Create new model instance with new solver<br>→ Run experiment comparing the two models<br><a href="https://www.nextmv.io/videos/operationalizing-python-based-pyomo-mip-decision-models" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">nextmv.io/videos/operationaliz</span><span class="invisible">ing-python-based-pyomo-mip-decision-models</span></a></p><p>Start @ 5 min. </p><p><a href="https://techhub.social/tags/orms" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orms</span></a> <a href="https://techhub.social/tags/datascience" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>datascience</span></a> <a href="https://techhub.social/tags/decisionops" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>decisionops</span></a> <a href="https://techhub.social/tags/decisionoptimization" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>decisionoptimization</span></a> <a href="https://techhub.social/tags/decisionscience" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>decisionscience</span></a></p>
nextmv<p>It’s that time of year: We’ve wrapped up our 2023 reflections, reviewed feedback and wishes for the future, and coalesced it all into our 2024 roadmap preview. Check out our next mvs: <a href="https://www.nextmv.io/blog/a-2023-look-back-and-2024-preview-of-whats-next-with-decisionops-and-decision-science" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">nextmv.io/blog/a-2023-look-bac</span><span class="invisible">k-and-2024-preview-of-whats-next-with-decisionops-and-decision-science</span></a> </p><p> <a href="https://techhub.social/tags/orms" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orms</span></a> <a href="https://techhub.social/tags/decisionops" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>decisionops</span></a> <a href="https://techhub.social/tags/decisionscience" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>decisionscience</span></a> <a href="https://techhub.social/tags/informs" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>informs</span></a> <a href="https://techhub.social/tags/datascience" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>datascience</span></a> <a href="https://techhub.social/tags/cicd" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cicd</span></a> <a href="https://techhub.social/tags/pyomo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>pyomo</span></a> <a href="https://techhub.social/tags/ortools" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ortools</span></a></p>
nextmv<p>👋Hello to the Nextmv Pyomo integration: Build, test, and deploy Python-based Pyomo decision models even faster. Get the rundown (with a slick video demo): <a href="https://www.nextmv.io/blog/nextmv-pyomo-integration-build-test-deploy-python-based-optimization-models-faster" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">nextmv.io/blog/nextmv-pyomo-in</span><span class="invisible">tegration-build-test-deploy-python-based-optimization-models-faster</span></a> </p><p><a href="https://techhub.social/tags/pyomo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>pyomo</span></a> <a href="https://techhub.social/tags/orms" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orms</span></a> <a href="https://techhub.social/tags/python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>python</span></a> <a href="https://techhub.social/tags/decisionOps" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>decisionOps</span></a> <a href="https://techhub.social/tags/optimization" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>optimization</span></a> <a href="https://techhub.social/tags/glpk" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>glpk</span></a> <a href="https://techhub.social/tags/datascience" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>datascience</span></a></p>
Ryan O'Neil<p>It&#39;s really neat seeing how active a project <a href="https://sigmoid.social/tags/Pyomo" class="mention hashtag" rel="tag">#<span>Pyomo</span></a> is.</p><p><a href="https://github.com/Pyomo/pyomo/blob/main/CHANGELOG.md" target="_blank" rel="nofollow noopener" translate="no"><span class="invisible">https://</span><span class="ellipsis">github.com/Pyomo/pyomo/blob/ma</span><span class="invisible">in/CHANGELOG.md</span></a></p>