]>
gitweb.michael.orlitzky.com - dunshire.git/log
Michael Orlitzky [Sun, 16 Oct 2016 04:51:24 +0000 (00:51 -0400)]
Pylint cleanup for tests.
Michael Orlitzky [Sun, 16 Oct 2016 04:43:43 +0000 (00:43 -0400)]
Remove two more defunct TODO items.
Michael Orlitzky [Sun, 16 Oct 2016 04:42:48 +0000 (00:42 -0400)]
Print the game data along with every GameUnsolvableException.
Michael Orlitzky [Sun, 16 Oct 2016 04:24:05 +0000 (00:24 -0400)]
Rename "xi" and "gamma" to "p" and "q" to avoid name clashes with CVXOPT.
Michael Orlitzky [Sun, 16 Oct 2016 01:49:12 +0000 (21:49 -0400)]
Remove a few completed TODO items.
Michael Orlitzky [Sun, 16 Oct 2016 01:48:16 +0000 (21:48 -0400)]
Separate and organize the various documentation sections.
Michael Orlitzky [Sun, 16 Oct 2016 01:12:16 +0000 (21:12 -0400)]
Reorganize the test source code and doc building.
Michael Orlitzky [Sat, 15 Oct 2016 23:49:48 +0000 (19:49 -0400)]
Move unit test code into its own file (unders test/ instead of src/).
Michael Orlitzky [Sat, 15 Oct 2016 22:55:09 +0000 (18:55 -0400)]
Add another TODO.
Michael Orlitzky [Sat, 15 Oct 2016 22:53:59 +0000 (18:53 -0400)]
Switch to Mathjax for the docs and finish the "Background" section.
Michael Orlitzky [Sat, 15 Oct 2016 21:54:12 +0000 (17:54 -0400)]
Remove a completed TODO.
Michael Orlitzky [Sat, 15 Oct 2016 21:53:48 +0000 (17:53 -0400)]
Enable doctesting of ReST docs with `make doctest`.
Michael Orlitzky [Fri, 14 Oct 2016 23:05:37 +0000 (19:05 -0400)]
Do a bunch more README work.
Michael Orlitzky [Fri, 14 Oct 2016 23:04:06 +0000 (19:04 -0400)]
Add one more TODO.
Michael Orlitzky [Fri, 14 Oct 2016 22:48:44 +0000 (18:48 -0400)]
Tweak the makefile now that the imports work better.
Michael Orlitzky [Fri, 14 Oct 2016 22:45:26 +0000 (18:45 -0400)]
Clean up a bit of the import mess.
Michael Orlitzky [Fri, 14 Oct 2016 17:47:23 +0000 (13:47 -0400)]
Remove docs with `make clean`.
Michael Orlitzky [Fri, 14 Oct 2016 17:47:10 +0000 (13:47 -0400)]
Do a bunch more work on the intro/background.
Michael Orlitzky [Fri, 14 Oct 2016 14:29:56 +0000 (10:29 -0400)]
Begin writing the background/introduction material.
Michael Orlitzky [Thu, 13 Oct 2016 23:38:12 +0000 (19:38 -0400)]
Locally disable another pylint warning to get clean again.
Michael Orlitzky [Thu, 13 Oct 2016 23:24:05 +0000 (19:24 -0400)]
Fiddle with the pylint settings.
Michael Orlitzky [Thu, 13 Oct 2016 23:14:26 +0000 (19:14 -0400)]
Make sure SymmetricPSD doesn't contain asymmetric matrices.
Michael Orlitzky [Thu, 13 Oct 2016 23:08:44 +0000 (19:08 -0400)]
Eliminate some unused variables by slicing a tuple before assignment.
Michael Orlitzky [Thu, 13 Oct 2016 23:04:44 +0000 (19:04 -0400)]
Fix two more pylint bad-variable-name warnings.
Michael Orlitzky [Thu, 13 Oct 2016 23:02:20 +0000 (19:02 -0400)]
Add a .pylintrc file and fix a few warnings.
Michael Orlitzky [Thu, 13 Oct 2016 18:17:54 +0000 (14:17 -0400)]
Add tests for Lyapunov games over the ice-cream cone.
Michael Orlitzky [Thu, 13 Oct 2016 16:33:31 +0000 (12:33 -0400)]
Return CVXOPT matrices from the random matrix functions.
Michael Orlitzky [Thu, 13 Oct 2016 16:21:56 +0000 (12:21 -0400)]
Test the dual game value of a Lyapunov game over the orthant.
Michael Orlitzky [Thu, 13 Oct 2016 16:16:32 +0000 (12:16 -0400)]
Remove unused import.
Michael Orlitzky [Thu, 13 Oct 2016 12:44:57 +0000 (08:44 -0400)]
Add another TODO for Lyapunov game tests.
Michael Orlitzky [Thu, 13 Oct 2016 12:44:03 +0000 (08:44 -0400)]
Add a test for Lyapunov games over the orthant.
Michael Orlitzky [Thu, 13 Oct 2016 12:32:19 +0000 (08:32 -0400)]
Add eigenvalues_re() to compute real parts of eigenvalues of any matrix.
Michael Orlitzky [Thu, 13 Oct 2016 00:30:32 +0000 (20:30 -0400)]
Refactor the random matrix functions a bit.
Michael Orlitzky [Thu, 13 Oct 2016 00:29:46 +0000 (20:29 -0400)]
Use syevr instead of syev for eigenvalues.
Michael Orlitzky [Wed, 12 Oct 2016 19:51:39 +0000 (15:51 -0400)]
Add a test for the value of a positive operator on the nonnegative orthant.
Michael Orlitzky [Wed, 12 Oct 2016 19:37:05 +0000 (15:37 -0400)]
Add tests for the orthogonality relationships of a game solution.
Michael Orlitzky [Wed, 12 Oct 2016 17:16:16 +0000 (13:16 -0400)]
Fix (or cover up) a bunch of pylint warnings.
Michael Orlitzky [Wed, 12 Oct 2016 16:18:53 +0000 (12:18 -0400)]
Add tests for the "translated" and "negated" games (from a few corollaries).
Michael Orlitzky [Tue, 11 Oct 2016 15:28:47 +0000 (11:28 -0400)]
Remove a completed TODO.
Michael Orlitzky [Tue, 11 Oct 2016 15:24:30 +0000 (11:24 -0400)]
Attempt to recover from "unknown" solutions.
Sometimes CVXOPT was coming back with "unknown" solutions that looked
pretty close to real solutions. Now, instead of failing immediately,
we check to see if the primal/dual objectives are within ABS_TOL of
each other, and whether or not the optimal solutions lie in the
cone. If they all do, we take that as our solution and succeed rather
than raising an exception.
This required the loosening of what it means to be in the cone. Before
this commit, a point needed to be "far" inside the cone (past the
tolerance). Now it can lie outside of the cone (but still within the
tolerance). This weakens the checks that we perform on e1 and e2, but
gives us an easy way to check the optimal strategies.
Michael Orlitzky [Tue, 11 Oct 2016 14:49:15 +0000 (10:49 -0400)]
Set ABS_TOL to 1e-6 to fix solution comparisons in the test suite.
Michael Orlitzky [Tue, 11 Oct 2016 14:35:44 +0000 (10:35 -0400)]
Remove a completed TODO.
Michael Orlitzky [Tue, 11 Oct 2016 14:33:56 +0000 (10:33 -0400)]
Get rid of the contains_strict() methods and compare against ABS_TOL.
Since we're comparing floating point numbers in the containment tests,
we should be doing it against a tolerance. But then, it becomes
pointless to distinguish between strict and non-strict containment.
So, this commit leaves only the __contains__() methods and checks
against options.ABS_TOL.
Michael Orlitzky [Tue, 11 Oct 2016 14:05:58 +0000 (10:05 -0400)]
Add two more tests for nonnegative scaling factors.
Michael Orlitzky [Tue, 11 Oct 2016 14:05:37 +0000 (10:05 -0400)]
Add another TODO about failing tests.
Michael Orlitzky [Tue, 11 Oct 2016 13:52:13 +0000 (09:52 -0400)]
Add a test for an example in the Gowda/Ravindran paper.
Michael Orlitzky [Tue, 11 Oct 2016 13:38:41 +0000 (09:38 -0400)]
Replace one TODO with something else, and add a new one.
Michael Orlitzky [Tue, 11 Oct 2016 13:36:22 +0000 (09:36 -0400)]
Remove a completed TODO.
Michael Orlitzky [Mon, 10 Oct 2016 18:46:27 +0000 (14:46 -0400)]
Finish overhauling the docstrings to numpy format.
Michael Orlitzky [Mon, 10 Oct 2016 17:44:29 +0000 (13:44 -0400)]
Switch the docs style of cones.py and update cartesian product containment.
The docs for cones.py have all been switched (roughly) to use the
numpy style. In the process, I noticed that cartesian product
containment was a lot weirder than it needs to be. The "point" that
the __contains__() and contains_strict() methods take is now a tuple
corresponding to the factors of the cartesian product.
Michael Orlitzky [Mon, 10 Oct 2016 17:44:14 +0000 (13:44 -0400)]
Another shot at documenting the options module.
Michael Orlitzky [Mon, 10 Oct 2016 16:12:38 +0000 (12:12 -0400)]
More "easy" docs work in matrices.py/options.py.
Michael Orlitzky [Mon, 10 Oct 2016 15:57:01 +0000 (11:57 -0400)]
Rename the "symmetric_linear_game" module to "games".
Michael Orlitzky [Mon, 10 Oct 2016 15:54:29 +0000 (11:54 -0400)]
Begin overhauling docs to numpy format.
Michael Orlitzky [Mon, 10 Oct 2016 15:54:09 +0000 (11:54 -0400)]
Overwrite apidoc output by default for now.
Michael Orlitzky [Mon, 10 Oct 2016 15:53:54 +0000 (11:53 -0400)]
Enable the napoleon Sphinx extension.
Michael Orlitzky [Mon, 10 Oct 2016 14:51:32 +0000 (10:51 -0400)]
Move the README into doc/, add it to the Sphinx index, and tweak that.
Michael Orlitzky [Mon, 10 Oct 2016 13:07:06 +0000 (09:07 -0400)]
Begin adding Sphinx crap for API doc generation.
Michael Orlitzky [Mon, 10 Oct 2016 12:58:16 +0000 (08:58 -0400)]
Add another TODO item.
Michael Orlitzky [Mon, 10 Oct 2016 02:35:14 +0000 (22:35 -0400)]
Add a unit test for the ice cream cone solution.
Michael Orlitzky [Mon, 10 Oct 2016 02:05:46 +0000 (22:05 -0400)]
Add a first unit test to check that a solution is always obtained.
Michael Orlitzky [Mon, 10 Oct 2016 02:05:07 +0000 (22:05 -0400)]
Transpose the input matrix "L" by default and document that fact.
Michael Orlitzky [Mon, 10 Oct 2016 02:03:44 +0000 (22:03 -0400)]
Load unit tests from symmetric_linear_game in the test suite.
Michael Orlitzky [Mon, 10 Oct 2016 01:58:40 +0000 (21:58 -0400)]
Add an options module to consolidate a few random "settings."
Michael Orlitzky [Mon, 10 Oct 2016 01:31:40 +0000 (21:31 -0400)]
Fix pylint warnings in matrices.py.
Michael Orlitzky [Mon, 10 Oct 2016 01:27:15 +0000 (21:27 -0400)]
Add one more variable exception to the `make lint` target.
Michael Orlitzky [Mon, 10 Oct 2016 01:26:56 +0000 (21:26 -0400)]
Add an inner_product() for matrices.
Michael Orlitzky [Sun, 9 Oct 2016 18:22:50 +0000 (14:22 -0400)]
Add another TODO item (find feasible starting points).
Michael Orlitzky [Thu, 6 Oct 2016 22:10:10 +0000 (18:10 -0400)]
Test that vec() is a no-op on vectors.
Michael Orlitzky [Thu, 6 Oct 2016 22:02:54 +0000 (18:02 -0400)]
Fix SymmetricPSD documentation and add the column-major vec() function.
Michael Orlitzky [Thu, 6 Oct 2016 21:16:49 +0000 (17:16 -0400)]
Remove a completed TODO item.
Michael Orlitzky [Thu, 6 Oct 2016 21:10:40 +0000 (17:10 -0400)]
Add doctests for the solution of some easy games.
Michael Orlitzky [Thu, 6 Oct 2016 20:13:53 +0000 (16:13 -0400)]
Add some more doctests for SymmetricPSD containment.
Michael Orlitzky [Thu, 6 Oct 2016 18:55:38 +0000 (14:55 -0400)]
Factor out srcdir in the makefile.
Michael Orlitzky [Thu, 6 Oct 2016 18:54:30 +0000 (14:54 -0400)]
Rename a variable to make pylint happy.
Michael Orlitzky [Thu, 6 Oct 2016 18:53:15 +0000 (14:53 -0400)]
Add rough eigenvalue-based containment testing for SymmetricPSD.
Michael Orlitzky [Thu, 6 Oct 2016 18:40:42 +0000 (14:40 -0400)]
Add an eigenvalues() method to matrices.py.
Michael Orlitzky [Thu, 6 Oct 2016 18:19:35 +0000 (14:19 -0400)]
Remove three completed TODO items.
Michael Orlitzky [Thu, 6 Oct 2016 18:18:29 +0000 (14:18 -0400)]
Fix dict sorting in and add another big example to errors.py.
Michael Orlitzky [Thu, 6 Oct 2016 18:04:43 +0000 (14:04 -0400)]
Add a few docs/examples to errors.py.
Michael Orlitzky [Thu, 6 Oct 2016 17:56:46 +0000 (13:56 -0400)]
Enable doctests in errors.py.
Michael Orlitzky [Thu, 6 Oct 2016 17:56:27 +0000 (13:56 -0400)]
Add a few SymmetricCone examples.
Michael Orlitzky [Thu, 6 Oct 2016 17:39:06 +0000 (13:39 -0400)]
Add the game dual() method and document symmetric_linear_game.py.
Michael Orlitzky [Thu, 6 Oct 2016 17:38:43 +0000 (13:38 -0400)]
Add variable name exceptions to the `make lint` target.
Michael Orlitzky [Thu, 6 Oct 2016 17:05:03 +0000 (13:05 -0400)]
Update the `make clean` target for the new source locations.
Michael Orlitzky [Thu, 6 Oct 2016 17:03:42 +0000 (13:03 -0400)]
Reorganize the source under src/dunshire.
Michael Orlitzky [Thu, 6 Oct 2016 16:48:48 +0000 (12:48 -0400)]
Fix lint warnings and a few variable errors in symmetric_linear_game.py.
Michael Orlitzky [Thu, 6 Oct 2016 16:48:15 +0000 (12:48 -0400)]
Move the pretty_print_dict() method out of the class (make it a function).
Michael Orlitzky [Thu, 6 Oct 2016 13:11:49 +0000 (09:11 -0400)]
Play with the error/solution formatting some more.
Michael Orlitzky [Thu, 6 Oct 2016 05:45:48 +0000 (01:45 -0400)]
More work-in-progress on solutions and their errors.
Michael Orlitzky [Wed, 5 Oct 2016 21:25:08 +0000 (17:25 -0400)]
Remove member vars from SymmetricLinearCone and work on the solution dict.
Michael Orlitzky [Wed, 5 Oct 2016 21:24:41 +0000 (17:24 -0400)]
Add the errors module, in a non-working state.
Michael Orlitzky [Wed, 5 Oct 2016 17:38:01 +0000 (13:38 -0400)]
Start to clean up pylint warnings in symmetric_linear_game.py.
Michael Orlitzky [Wed, 5 Oct 2016 17:37:48 +0000 (13:37 -0400)]
Add a "make lint" target.
Michael Orlitzky [Wed, 5 Oct 2016 16:27:07 +0000 (12:27 -0400)]
Add doctests for the matrices module and fix its pylint warnings.
Michael Orlitzky [Wed, 5 Oct 2016 15:57:26 +0000 (11:57 -0400)]
Add documentation, tests, and containment functions to the cones module.
Michael Orlitzky [Wed, 5 Oct 2016 15:55:36 +0000 (11:55 -0400)]
Add a norm function to the matrices module.
Michael Orlitzky [Wed, 5 Oct 2016 15:55:17 +0000 (11:55 -0400)]
Add another TODO to compare against a tolerance parameter.
Michael Orlitzky [Wed, 5 Oct 2016 14:48:16 +0000 (10:48 -0400)]
Add a most basic test suite runner (for doctests only, at the moment).
Michael Orlitzky [Wed, 5 Oct 2016 14:47:44 +0000 (10:47 -0400)]
Add another TODO to check the dimensions of the PSD cone.