-
-
Notifications
You must be signed in to change notification settings - Fork 36
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[REVIEW]: Shop-Solver: A framework for solving and benchmarking shop scheduling problems #1752
Comments
Hello human, I'm @whedon, a robot that can help you with some common editorial tasks. @nnadeau, @nthomasCUBE it looks like you're currently assigned to review this paper 🎉. ⭐ Important ⭐ If you haven't already, you should seriously consider unsubscribing from GitHub notifications for this (https://github.com/openjournals/joss-reviews) repository. As a reviewer, you're probably currently watching this repository which means for GitHub's default behaviour you will receive notifications (emails) for all reviews 😿 To fix this do the following two things:
For a list of things I can do to help you, just type:
For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:
|
|
@gkthiruvathukal @KingZee my initial impressions: AuthorshipThe second and third authors have made no contributions to the repository:
Significance
IssuesInitial Impressions
|
@nnadeau Thanks for giving the excellent, constructive feedback. We are going to need more than a GUI wrapper to proceed with this submission. When I decided to put this forward for review, I was under the impression there was more of an API here and not just a GUI wrapper. @KingZee Please take this feedback into account and let us know when you have been able to address the above. You should probably view the above feedback as a need for major revisions. You might find it convenient to make issues in the issue tracker for each of the key bullet points, including the issue about the list of authors. Once all of these issues are resolved, we can continue review. Alternately, we can make a checklist from @nnadeau's report. |
@gkthiruvathukal @nnadeau, thanks a lot for your efforts. I have to say I am a bit confused, but really willing to discuss and improve on anything that needs work here. What do you mean by a "GUI wrapper"? A wrapper to what? My own code for solving schedules? What I built here is a documented structure that allows any future development to be extended from the same abstract class. You should know every piece of code in my project is mine, and the GUI isnt a wrapper for a single solver, it's an extension I myself chose to add that is agnostic to whatever solver type is used, making the software extremely easy to fork and improve upon. The Solver The solvers package has 2 solver algorithms that I coded and optimised myself for all 3 types. Like I mentioned before and in the readme, I plan to add many more solver types based on the same class structure explained above and in the Readme bullet points. So, I really dont understand @nnadeau's argument here, the software doesn't just render a GUI, it actually solves any given matrix. The GUI is even more extra effort I added to make this software even more useful from an academic standpoint. |
I even explained in my paper every step on how I modeled and made the conception of the exact algorithms in my software, which is why I am really confused on what am I missing here to make this clearer. |
@KingZee please see my comments below:
|
Thanks for the comments. The solution space is for the exact, not the quick solver algorithm. I didn't mention anything about the quicksolver in the algorithm because it is a heuristic I am still trying to improve and maybe write a future paper on. This includes your second comment, I believe that part is not something to be included in the JOSS scope, in here I am including only my software, and the quick solver is included as a personal proof of concept. For documentation I included explanation and input/output of every class/method, but I can absolutely provide better docs, I will look into the 2 examples you provided. I did not use an interface, I used an abstract class. Interfaces aren't just a Java concept, it's an OOP structure choice. I could have chose to made the main Solver class either an interface, or an abstract class. Both of them come with different usecases and choices, I chose an abtstract class because some of the Solver class method need bodies because some of the threading code is common across all solvers. As for your two last comments I am not sure in which category of the JOSS publication requirements you would include that. There are solvers like mine exclusively for TSP, for minimum spanning tree problem, and so on. I feel like you are being slightly subjective and too harsh with judging code quality. If it's because the number of algorithms is lacking that is something that I will be spending months and years researching to keep expanding and improving on this software. What I would like is some exact and specific things I can improve on if you feel like it is lacking, but there are absolutely respectable software created for the point of solving well known combinatorial problems. Not only is there no software like mine written in java, but there is no software that solves shop scheduling problems at all. The fact that this is open source helps even more in that other reaearchers can extend from the Solver abstract class and make their own implementation of solveMakespan(). Thank you. |
I would love to hear the thoughts of @gkthiruvathukal and @nthomasCUBE as well about all of this, to be able to reach a consensus from diverse points of view. |
!!! REVIEW NOT COMPLETE YETkdntribution of the other author in paper or github. SOFTWARE aspect -> authors i agree that role of coauthors should be stated somewhere. Maybe they can be added into the github project. -> installation -> software gui looks nice and easy to use, probably would be nice to have a possibility to upload a matrix instead of manually adding values. -> comparison to other tools missing would be nice to list which other tools do similar analysis and whether the PAPER aspect (not done yet) p1. NP-hard, maybe to add a ref that these problems are NP-hard Hi guys, so far i still struggle with compiling and running, |
Hi, I plan to comment after both reviewers chime in. Just a reminder that the purpose of review is to identify issues leading to improvements by the authors. So please focus on concrete issues and use the issue tracker. Many reviewers open up specific issues using the issue tracker. Once these are addressed (possibly with back and forth with author) we can move forward. The goal is to ensure quality of the accepted submission. Hope that helps. |
Hi @nthomasCUBE, thanks a lot for the comments. I have made a new joss branch, so as to get everything working there before merging with master.
It's true that they are not contributors to the development of the project, but both of them have proof-read and partially co-authored the paper. I could ask them to make github accounts and make symbolic contributions if absolutely necessary. Maybe @gkthiruvathukal can chime in.
Thank you, I have made n edit to the readme added a link to JDK 11. (all of the changes are going to be in the JOSS branch for now). Also since each compiler has their own VM arguments prompt, I feel that including explanation on the exact steps for how to add the VM arguments isn't too relevant, as the VM arguments themselves should be enough.
This is a very good feature request. I will try to implement it as soon as I have the time.
As I mentioned before, I have found it very difficult to find software with a goal of scheduling jobs, when I looked for software that solves all job-shop, open-shop, and flow-shop problems I couldn't find any at all. There are some software that simply work as "GUI wrapper"s, and do not provide any solving framework. I have still found some software that generate Gantt charts for the job-shop variant. The motive of this software was in fact the lack of such a framework. There are algorithm implementations and libraries such as (https://github.com/fengelhardt/LiSA), with a large number of algorithms written across years of research, but there isn't that framework to help speed up setup time, as from the literature that I've read it simply seems each researcher re-writes their own implementation of shop scheduling from scratch, and only then proceed to code the solving part. I reckon I still have to do my due diligence and make an exhaustive in-depth search of all software used here, and give a final answer backed with references.
I will add a section for contribution and explain extension of the Solver class. I apologize if this reply is a bit late, comment edits don't trigger a notification so I just noticed your progress as I checked on this. It would be convenient if you raised an issue or made a new comment here for future review comments you might have. Thank you for your effort. |
All, ok, now that there is reviewer feedback (thanks @nnadeau and @nthomasCUBE) and a response from @KingZee, we are heading in the right direction. Please keep in mind that JOSS operates differently from your typical academic journal. As an editor, I rarely put anything up for review that lacks some novelty or technical merit, and I see potential in this work. Ultimately, the formal peer review process is designed to improve the quality of the software submitted. I'm therefore going to focus on the quality issues. Being completely novel is not a prerequisite for JOSS submissions but clear motivation for why this is research software and having an audience (statement of need) is. Therefore, we will need to keep these in mind as we move forward. I'm going to attempt to synthesize but here is a checklist of things I think need to be done before I can recommend acceptance, which is a union of the reviews + my own additions.
I don't think any of the above is impossible to address. While it may take some time, we can work with your schedule, @KingZee. As long as you are willing to see the submission through the process, we can eventually get to a proper accepting state. |
@gkthiruvathukal Thank you very much for your bullet points, I absolutely agree with them and feel that they all are very pertinent. I will do my best over the course of the next few weeks to check off everything. I have a single concern about the second half of the third bullet point. I agree with both of you and @nnadeau that javadoc might not have been the best choice, and will do my best to re-write all of it in a repo-friendly manner. But :
These are points that might need to be clarified.
But while an interface defines the contract future developers will need to implement, an abstract class inheritance still creates a much stronger contract, I can demonstrate that through many examples :
Trust me I have had this discussion with myself, other developers, and have convinced myself of the use of abstract classes in this specific scenario. I understand that interfaces are common ways to define such contracts, but please understand that this was a logical choice with future implementations in mind. That would be all, I would like to thank @gkthiruvathukal again for the great synthesis, I'll get to working on it as soon as possible. I would also like to thank both reviewers for their work in judging my submission. |
Thanks for the follow up, @KingZee. Keep in mind that you don't need to apologize for anything. The purpose of peer review in JOSS is to improve your submission. When it comes to the So please take your time to make the various improvements. I'll ask our reviewers to take a second look (or you can do so when ready). Please use my checklist to indicate where you are in the process, ok? |
I'm going to mark this as paused for now - @gkthiruvathukal, you can remove this mark when there is progress. |
I agree with you, @danielskatz. There are a significant number of issues that likely require significant time to be resolved. |
@danielskatz @openjournals/joss-eics This submission has been paused since end of October. Should we go ahead and close the issue, for now? |
@gkthiruvathukal I apologize for taking a while, but since that time I got caught up with other academic aspects of my phd (and other personal reasons), so I unfortunately had to delay working on this. I am definitely still interested in getting my paper & software published on JOSS, but I didn't think there was a deadline on this. If you guys have organizational reasons for closing the issue, I'd be fine with that, otherwise I will try to make serious time for this within the next month. |
@KingZee There's no deadline, but I would like to have some estimate of when you can bring it to conclusion! I totally understand the need to focus on finishing your PhD and wish you the best with that! Can you give me a date to follow up with you? We'll keep this issue open. |
Thanks a lot. I will try to get started on fixing all the issues after the first week of February, I will probably create issues on my own repo and ping you and the reviewers after making the relevant PRs. |
@KingZee Just checking in. Let us know when you are ready for us to take another look. Ok? |
👋 @KingZee - any progress to report? |
@danielskatz I have currently began working on the mentioned issues. #1752 (comment) This comment summarized what needs work, I closed an issue related to the 3rd point just a few days ago, KingZee/shop-solver#3 . I'm currently figuring out better documentation, I used doxygen as recommended but I did not see any benefit over javadoc, so I am figuring out better alternatives. I will probably make a new commit on the issue soon. |
👋 @KingZee - any further progress to report? Can you provide an estimate on when the review will be able to progress again? |
Dear authors and reviewers We wanted to notify you that in light of the current COVID-19 pandemic, JOSS has decided to suspend submission of new manuscripts and to handle existing manuscripts (such as this one) on a "best efforts basis". We understand that you may need to attend to more pressing issues than completing a review or updating a repository in response to a review. If this is the case, a quick note indicating that you need to put a "pause" on your involvement with a review would be appreciated but is not required. Thanks in advance for your understanding. Arfon Smith, Editor in Chief, on behalf of the JOSS editorial team. |
@KingZee - do you think you will have the time to restart working on this submission within the next few weeks or so? If not, in order to respect the reviewers' time and availability committment, I will propose to close (reject) this submission, and invite a resubmission at a later point in time. |
@arfon Absolutely, I was working through the bullet points but due to COVID I was unfortunately unable to continue work on anything for the last quarter or so, I will now get back into finishing up what was left. Apologies for the delay. |
OK thanks @gkthiruvathukal. @nnadeau, @nthomasCUBE, @gkthiruvathukal - thanks for your efforts on this paper. Unfortunately it looks like this one isn't going to make it through review this time. @KingZee - we'd welcome a resubmission in the future but at this point will assume you're no longer interested or able to pursue this paper in JOSS and therefore move to reject the submission. |
@whedon reject |
Paper rejected. |
Submitting author: @KingZee (Abdelhakim Zakkari)
Repository: https://github.com/KingZee/shop-solver
Version: v1.2.0
Editor: @gkthiruvathukal
Reviewer: @nnadeau, @nthomasCUBE
Archive: Pending
Status
Status badge code:
Reviewers and authors:
Please avoid lengthy details of difficulties in the review thread. Instead, please create a new issue in the target repository and link to those issues (especially acceptance-blockers) by leaving comments in the review thread below. (For completists: if the target issue tracker is also on GitHub, linking the review thread in the issue or vice versa will create corresponding breadcrumb trails in the link target.)
Reviewer instructions & questions
@nnadeau & @nthomasCUBE, please carry out your review in this issue by updating the checklist below. If you cannot edit the checklist please:
The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @gkthiruvathukal know.
✨ Please try and complete your review in the next two weeks ✨
Review checklist for @nnadeau
Conflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper
Review checklist for @nthomasCUBE
Conflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper
The text was updated successfully, but these errors were encountered: