Ask HN: PhDs/students, how do you come up with viable problems/solutions?
While I do have the support of advisor, and in general know the bigger research direction, coming up with a relevant doable+innovative research problem is still somewhat upon me and hard. I wanted to read on other researchers' perspective on how they do it, what works and what doesn't. Thanks!
Personally, I started with a few subjects that I knew would sustain my interest, that I would not get bored with, and that I felt I could honestly make a real contribution to. I then tried to connect them all together!
At first the connections looked very forced and unlikely to yield anything more than a handful of curiosities. I gave myself a time limit to try out explorations to test some ideas, full aware that I may need to backtrack and start again in a new direction.
After some searching around indeed the connections were there in a way that was unexpected and gave way to research that led to my dissertation, another students dissertation which continued work in that area, and a good number of papers.
Maybe the short summary is: give yourself a “writing prompt” of given these things I like and want to research how might they be connected and what do those connections mean?
Is there a paper / technique that interests you from the background research / reading?
Try reproducing it and then working on their future work paragraph
For me, I was at the same guest lecture as my future advisor was at. When I took a class with him, I asked him what research he did. After rattling a bunch of things off and seeing my lack of interest, he asked me "did you see the talk about evolving equations, want to work on that?" I replied "yes" and "yes!"
After spending a couple of years trying to reproduce and scale these systems (my advisor worked in related things), I grew frustrated with the prevailing techniques. So we set about trying to solve the same problem with the restriction that it should be a deterministic algorithm. This set me on my path to novel research and results
Thanks. Yeah there are papers that I am interested on, in fact, I am interested on too many things at once which doesn't help. Also, I think I am always thinking of solving bigger problems where it's hard to make progress on.
Also, since you mentioned scaling systems and equations, are you by any chance working on numerical linear algebra stuffs like iterative solvers etc.? MPI/HPC etc? If so, I am in HPC as well.
> in fact, I am interested on too many things at once which doesn't help.
Be careful of "surface level work". Your Ph.D. is not going to come from surface level work. It will come from picking something and developing a deep understanding of that topic ... deeper than most of the people in the audience, anyway.
Also, since you mention HPC, be aware of what areas are "well-explored" and stay away from them. Your advisor should be able to help with this. You want an area that has not been dug up by many brilliant minds before you, leaving only small nuggets of semi-precious metal for you to find.
> numerical linear algebra stuffs like iterative solvers
Been there; done some of that:
Once worked on numerical linear algebra, e.g., Gauss-Seidel. Then ran into the M. Newmann numerically exact technique based on (i) multiply by a suitable power of 10 to have only whole numbers, (ii) for a list of prime numbers, solve the system in the integers modulo each prime, (ii) construct the multi-precision rational results using the Chinese remainder theorem.
From a course, a rule: "For numerical calculation, multiply and divide freely, add OK, but avoid subtraction, especially avoid subtracting two numbers whose difference is small, i.e., nearly equal."
One day, talking with Richard Bartels, mentioned that once I wanted a random unitary matrix so generated some random vectors and applied the Gram-Schmidt process, and right away Bartels responded that Gram-Schmidt is "numerically unstable" to which I replied "Wondered about that so applied Gram-Schmidt twice". In general, Bartels has done a lot in numerical methods.
In summary, in my experience, for many decades, a LOT has been done on numerical linear algebra, including iterative methods, for the simplex algorithm, etc. E.g., at one time, used Linpack -- it seemed terrific; on a computer with a 1.8 GHz clock, called Linpack 11,000 times a second.
As I recall, in numerical linear algebra there are some fundamental issues having to do with the eigenvectors of the polar decomposition. E.g., can argue that for these issues, sometimes Gauss-Seidel cannot work well.
Might look at some of the Golub LU decomposition work, e.g., in linear programming.
If you can find some problems where can get new, correct, significant results, okay. Maybe can get some problems from some of the current AI work.
Examples: (1) Took an industrial problem, did some math and computing, and got an engineering style solution. Some other students in the department did much the same but for different practical problems. (2) Had a course in optimization, in the summer went over the notes word by word and rewrote the notes, got deep into the subject, found an unanswered question, got a solution, along the way found a surprising, general result, wrote a paper, got it accepted right away at Mathematical Programming, published later elsewhere. (3) Working in some AI to monitor systems, wanted some results with meager assumptions so used the general result tightness. So, each of these is an example of how to find a problem and get some results.
But broadly for some decades, "numerical linear algebra", including iterative approaches, is a 'well plowed field'.
For most PhD students their first project will most likely be something that the advisor has scoped. As you stand on your feet and learn your field (aka around your 2nd-3rd year) you will start noticing some legitimate literature gaps. One of them will also be viable & interesting to look at.
Thanks, I was waiting for something realistic like that
In maths, start by reading recent papers and see if you can extend their results.
1) Creative projects beget creative projects. When you start working on one project, you'll have ideas for a dozen more, and probably one of those might actually be a good project idea to continue exploring and refining and shaping into a reasonable problem. It's really hard to come up with things if you're just staring at a blank sheet of paper, but working on anything at all gets this virtuous cycle started.
2) Talk to people! Bounce your ideas/areas of excitement off of other people, and see what gets reflected back at you. That signal can be very helpful to see when you've stumbled across an idea or problem that might be useful to more people than just yourself, i.e. a more important area of investigation.
3) Read, read, read. And take notes on random ideas you have while reading, and things that papers missed or didn't look into. If you do this enough and take some time to reflect on it, you can start to find gaps in knowledge that could be addressed.
Normally my workflow is: My advisor provided me with general research direction, and from there, I conduct a SLR to identify gaps in the literature. This helps to find areas where research is lacking or where new approaches could be explored. Once I identify a gap, I refine it into a specific, viable research problem that aligns with both feasibility and innovation. The SLR also helps me see what methodologies have been used and what potential solutions might work.
If you read enough literature and try to implement enough stuff yourself, you will eventually run into a question that you cannot immediately answer.
Often when I read a paper in a subject new to me, I realize that I do not understand something and make a note to study that question further. A lot of times, that question is already answered somewhere. I find an answer to it --- either by asking a colleague, searching for papers or books on the subject, searching the internet, or even just by trying to solve it myself --- and I then just move on once I get an adequate answer. But sometimes, even in subjects that I am an expert in, I write down a question that I cannot find a good answer to at all. Then I know that I have something that is worth researching further.
Read a bunch of papers on a topic you find interesting. What do all the papers do wrong or ignore. Start there.