Export GAMS GDX file to different Python formats (CSV,Feather,Pickle)
A GAMS GDX file is a binary file with a number of GAMS symbols with their data. When collaborating with colleagues that work with Python, it may be useful to convert a GAMS GDX with relevant data to...
View ArticleTiny non-convex quadratic model brings solvers to their knees
table.xyz { table-layout: fixed; border-collapse: collapse; margin-left:auto; margin-right:auto; } table.xyz th, table.xyz td { border: 1px solid black; } table.blueTable { border: 1px solid #1C6EA4;...
View ArticlePopulating SQLite databases
GAMS has three easy ways to populate a SQLite database:Using the tool gdx2sqlite. This tool populates a SQLite database with data from a GDX file. This means we first have to export GAMS data to a GDX...
View ArticleSupplier selection: an easy MIP
table.xyz { table-layout: fixed; border-collapse: collapse; margin-left:auto; margin-right:auto; } table.xyz th, table.xyz td { border: 1px solid black; } table.blueTable { border: 1px solid #1C6EA4;...
View ArticleAssigning jobs to machines without overlap
table.xyz { table-layout: fixed; border-collapse: collapse; margin-left:auto; margin-right:auto; } table.xyz th, table.xyz td { border: 1px solid black; } table.blueTable { border: 1px solid #1C6EA4;...
View ArticleAnother fast MIP model: covering
table.xyz { table-layout: fixed; border-collapse: collapse; margin-left:auto; margin-right:auto; } table.xyz th, table.xyz td { border: 1px solid black; } table.blueTable { border: 1px solid #1C6EA4;...
View ArticleSome approaches for moving data between MS Access and GAMS
Moving data between different environments is always more difficult than we hope. Here I list some approaches and actually try them out on a small dataset. We hit some bugs along the way and also a few...
View ArticleChoosing between NLP solvers: interior point or active set.
One way to categorize (local) nonlinear programming (NLP) solvers is active set methods and interior point solvers. Some representative large-scale sparse solvers are:Active set: CONOPT, SNOPT. These...
View ArticleAlgorithm vs. model
table.xyz { table-layout: fixed; border-collapse: collapse; margin-left:auto; margin-right:auto; } table.xyz th, table.xyz td { border: 1px solid black; } table.blueTable { border: 1px solid #1C6EA4;...
View ArticleSimultaneous equation models and data errors
table.xyz { table-layout: fixed; border-collapse: collapse; margin-left:auto; margin-right:auto; } table.xyz th, table.xyz td { border: 1px solid black; } table.blueTable { border: 1px solid #1C6EA4;...
View ArticleCompression and large tables (Excel and CSV)
Here is an interesting little experiment: load a large CSV file into Excel. My original Powerpoint slide was not as complete as it should be. Here is more size info:I argue that a column store database...
View ArticleIn-process, in-memory databases
There are a few database systems that are a bit different. They are libraries that can be linked directly to your application. Linking can be done statically (during the compilation/linking step) or...
View ArticleSome GAMS embedded Python notes
Here are two issues you may want to be aware of. The discussion below is relevant for Windows and not so much for Unix variants.Using Python Raw strings for directories$onEmbeddedCode Python:dir =...
View ArticleA large MIP model that should be solved as LP: the root node
table.xyz { table-layout: fixed; border-collapse: collapse; margin-left:auto; margin-right:auto; } table.xyz th, table.xyz td { border: 1px solid black; } table.blueTable { border: 1px solid #1C6EA4;...
View ArticleSolving as network with lowerbounds
table.xyz { table-layout: fixed; border-collapse: collapse; margin-left:auto; margin-right:auto; } table.xyz th, table.xyz td { border: 1px solid black; } table.blueTable { border: 1px solid #1C6EA4;...
View ArticleFinding common patterns
table.xyz { table-layout: fixed; border-collapse: collapse; margin-left:auto; margin-right:auto; } table.xyz th, table.xyz td { border: 1px solid black; } table.blueTable { border: 1px solid #1C6EA4;...
View ArticleGenerate all solutions that sum up to one
table.xyz { table-layout: fixed; border-collapse: collapse; margin-left:auto; margin-right:auto; } table.xyz th, table.xyz td { border: 1px solid black; } table.blueTable { border: 1px solid #1C6EA4;...
View ArticleCVXPY DCP errors
table.xyz { table-layout: fixed; border-collapse: collapse; margin-left:auto; margin-right:auto; } table.xyz th, table.xyz td { border: 1px solid black; } table.blueTable { border: 1px solid #1C6EA4;...
View ArticleSome confusion here
Sometimes you end up visiting strange sites. This is a question & answer site. The question is:Obviously, this is not a good question. It is something like "what is the difference between a ham...
View ArticleA Julia thingy
In Julia, we can write 2x instead of 2*x. Not the most earth-shattering. But a bit special nonetheless.The expression in the last cell is interpreted as a function call.
View Article