-
Notifications
You must be signed in to change notification settings - Fork 93
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
More accurate cost function computation (#75)
* initial work on sparse matrix representation * store/restore functionality * addLastRow functionality * getRow and getColumn * column-merging functionality * added an interface class * introducing also sparse vectors * added addLastColumn functionality * another unittest * get sparse columns/matrices in dense form * WIP on storing the constraint matrix inside the tableau in sparse form * more WIP, fixed a few bugs, still have a couple of failing tests * fixed some test issues * initialization * resize _a along with the rest * sparse lu factors * store also the transposed versions of F and V * starting work on the sparse GE * some work on changing the values within an existing sparse representation, needed for sparse factorization. still WIP * refactoring and new functionality for CSRMatrix: any kind of insertions and deletions * support for empty initialization and counting elements * sparse GE is now working. minor bug fixes elsewhere * compute Ft and Vt as part of the G-elimination process * tests * basis oracles can return also sparse columns, not just dense * sparse LU factorization class * switch to using the sparse factorization in the engine/tableau * bug fix in mergeColumns, and nicer printing * bug fix * bug fix * bug fix: merging columns does not delete the actual column, just leaves it empty * configuration changes * optimization: since the sparse columns of A are needed all the time, just compute them once-and-for-all * a more efficient implementation of sparse vectors * comments and unit tests * cleanup * keep _A in dense column-major format, too, instead of repeatedly invoking toDense() to gets its columns * bad deletes * bug fix in test * bug fixes: relu constraint propagation, and the handling of merged variables in the preprocessor * new test * compute Ft incrementally, use it whenever sparse columns are required * did the todo * valgrind fixes * debugging * un-initialized memory * cleanup * fixing an issue with cost function degradation * reinstating the anti-looping trick
- Loading branch information
Showing
7 changed files
with
57 additions
and
39 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters