#16331: Game Theory: Build capacity to solve matching games in to Sage.
-------------------------------------+-------------------------------------
Reporter: vinceknight | Owner:
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-6.4
Component: game theory | Resolution:
Keywords: Game Theory, | Merged in:
Matching Games, | Reviewers:
Authors: | Work issues:
Report Upstream: N/A | Commit:
Branch: | 31fc55432bfc19381d2d09e5602e7bfe5c496f6c
u/vinceknight/game_theory__build_capacity_to_solve_matching_games_in_to_sage_|
Stopgaps:
Dependencies: |
-------------------------------------+-------------------------------------
Comment (by kcrisman):
Comments I could reconstruct:
* Should it be a game of 2n players or size n? Is there a standard
terminology?
* Since the matching $M$ is bijective and the algorithm is not symmetric,
should the solution really have each match twice?
{{{
sage: m.solve()
{'A': ['J'],
'C': ['K'],
'B': ['M'],
'D': ['L'],
'K': ['C'],
'J': ['A'],
'M': ['B'],
'L': ['D']}
}}}
maybe instead
{{{
sage: m.solve()
{'A': ['J'],
'C': ['K'],
'B': ['M'],
'D': ['L'],
}}}
and then it will be easy to tell if it's inverted...
* `_repr_` really shouldn't have it possible to have something other than
$2n$. I'm not asking to check the `_is_complete` at that point, but at
least they should be same number can be checked.
* `latex` - I'm not sure this is standard notation. `4=\{(1, 0)\}`
equals sign?
* in `game_to_dict` I just don't know whether one should have "undicted"
the game in the first place. It seems like a lot of trouble to redictify
the game. Maybe the data should be stored differently in any event.
Constructing a whole `_Player` for each player seems like a lot of
overhead. They have no external existence.
* Is it possible for someone to access all the partners and pref and such
in such a way as to mess with `_is_solved`? It just seems odd that those
things might be directly accessible.
* I think another word than 'complete' is needed in checking
completeness, because if `{3: (0, 2, 1)` was changed to `{3: (0, 2)` it
would still raise the error but seem "complete" in some sense...
* What if the automatically added suitor name is already in use? (Say,
we already have names `3, 'Fred'` and now want to automatically add a
third one.) I don't know the right answer here.
* Any rationale for the autoprefs?
* I wonder if `sol_dict` should be an attribute and not a method.
Especially since you're not really supposed to access it publicly.
* And of course, if you REALLY want to use the `_Player` class, needs
doctests :)
--
Ticket URL: <http://trac.sagemath.org/ticket/16331#comment:45>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.