User:Dspies: Difference between revisions

Jump to navigation Jump to search
158 bytes added ,  20 March 2014
Line 110: Line 110:
== Y: Your task ==
== Y: Your task ==
* Did you select a task from our list of proposals and ideas?
* Did you select a task from our list of proposals and ideas?
I kind of had my own idea, but it's closely related to one of the tasks listed.
Yes
** If yes, what task did you choose? Please describe what part of it you especially want to focus on if you can already provide this information.
** If yes, what task did you choose? Please describe what part of it you especially want to focus on if you can already provide this information.
The Sparse Matrices Project: http://wiki.octave.org/Projects#Sparse_Matrices
The Sparse Matrices Project: http://wiki.octave.org/Projects#Sparse_Matrices
I want to help improve Sparse Matrix support. But I have a specific goal in mind, not just generally filling arbitrary gaps here and there. (see below)
I want to help improve Sparse Matrix support.
** If you apply for a task you have added yourself instead, please describe this task, its scope and people you already talked to concerning it. What field of tasks did you miss on the list?
Particularly, I wanted to build a sparse matrix library tuned towards graph operations.  I think that people often underestimate how many complex graph operations are possible with sparse matrices.  In many cases, doing something like a breadth-first search can be equivalent to an operation which is almost just a matrix multiply.<br />
Particularly, I want to build a sparse matrix library tuned towards graph operations.  I think that people often underestimate how many complex graph operations are possible with sparse matrices.  In many cases, doing something like a breadth-first search can be equivalent to an operation which is almost just a matrix multiply.<br />
On the mailing list, I gave an example of a program that takes an undirected graph and finds the set of all maximal cliques.  As I've mentioned, I've done a lot with this sort of thing, but constantly find myself working around gaps or bugs.  I want to try to fill those gaps and build this graph library on top of it. <br/>
On the mailing list, I gave an example of a program that takes an undirected graph and finds the set of all maximal cliques.  As I've mentioned, I've done a lot with this sort of thing, but constantly find myself working around gaps or bugs.  I want to try to fill those gaps and build this graph library on top of it. <br/>
UPDATE: After some discussion on the mailing list, one project someone suggested was just to get Octave Sparse-Matrix indexing working properly.  I'd be happy just working on this.  It seems feasible since sparse column arrays are already stored in compressed format (and indexing generally requires converting back and forth between matrix and column format, but there shouldn't be any need to use row vectors)
UPDATE: After some discussion on the mailing list, one project Jordi suggested was just to get Octave Sparse-Matrix indexing working properly.  This seems feasible since sparse column arrays are already stored in compressed format (and indexing generally requires converting back and forth between matrix and column format, but there shouldn't be any need to use row vectors).  My first thought for how to approach this is simply to change the way sparse matrix dimensions are represented so that the vertical dimension is an unsigned long long int.  If this turns out to be infeasible, I'll look at other possibilities.


* Please provide a rough estimated timeline for your work on the task.
* Please provide a rough estimated timeline for your work on the task.
I don't know how to estimate this.
Honestly, the sparse-indexing problem doesn't sound like something that will take up three full months to complete, but I acknowledge that I haven't done much work on the Octave source yet, and can't properly judge this.  If it doesn't, there are certainly many other sparse matrix features that have yet to be implemented which I would enjoy working on.  
[[Category: Summer of Code]]
[[Category: Summer of Code]]
14

edits

Navigation menu