mohabamr's blog

By mohabamr, history, 3 months ago, In English,

Hello guys, for those of you who are tired of searching for "what to solve next", my bachelor thesis was to implement a recommender system for competitive programming problems; supervised by Dr. Amr ElMougy and Maged Shalaby

Give it a look and check your recommendations now: https://acm-recommender.herokuapp.com/#/signup

Sign-up (using your codeforces username) then sign-in and check your recommendations in almost no time (just give it a minute or 2).

There would be 10 problems recommended per user, we encourage you to solve them and give us feedback about each recommendation (through the "evaluate" button).

It is very important to evaluate the problems, as this feedback is needed to enhance the recommender and conclude which algorithm is better. So, please don't forget to submit your evaluations!

Thank you and happy coding.

For any problems or suggestions; you can contact me: mohabamr1@gmail.com

 
 
 
 
  • Vote: I like it  
  • +65
  • Vote: I do not like it  

»
3 months ago, # |
  Vote: I like it +3 Vote: I do not like it

Application error

  • »
    »
    3 months ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    please, check now.

    Heroku crashes sometimes and restarts automatically.

»
3 months ago, # |
  Vote: I like it +12 Vote: I do not like it

How exactly do you calculate what problems to recommend?

  • »
    »
    3 months ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    it's a hybrid approach of Collborative filtering and another layer to filter out the most relatable problems (tags) to your history.

»
3 months ago, # |
  Vote: I like it +3 Vote: I do not like it

It would be really great if it was possible to hide a problem from the list after you solved and evaluated it.

  • »
    »
    3 months ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    you're totally right, would do that in the next release. soon.

»
3 months ago, # |
  Vote: I like it 0 Vote: I do not like it

Can we have access to your thesis document? What was your approach?

  • »
    »
    3 months ago, # ^ |
      Vote: I like it +3 Vote: I do not like it

    I still did not submit it, it's a hybrid approach between CF (user-based) and some filtering regarding the tags and difficulty level of the problem.

    I will try to publish it if possible.

»
3 months ago, # |
  Vote: I like it +3 Vote: I do not like it

My recommendations are not generated yet, so, i'll be back

  • »
    »
    3 months ago, # ^ |
      Vote: I like it +1 Vote: I do not like it

    Same here, I have waited like 20 minutes already.

  • »
    »
    3 months ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    don't forget to check again

    • »
      »
      »
      3 months ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      Hmm, if the system recommends me problems for the first division, does this mean that I'm ready for the first division?

      • »
        »
        »
        »
        3 months ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        not exactly, but most probably yes.

        the system recommends for you problems that should be a little bit harder than the usual to challenge your skills, but at the same time in a certain range so you would not be frustrated.

»
3 months ago, # |
  Vote: I like it 0 Vote: I do not like it

Interesting Idea!

»
3 months ago, # |
  Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by mohabamr (previous revision, new revision, compare).

»
3 months ago, # |
  Vote: I like it 0 Vote: I do not like it

So we can use this to find duplicate problems?

  • »
    »
    3 months ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    nope, problems you did not solve, assuming.

    • »
      »
      »
      3 months ago, # ^ |
        Vote: I like it +17 Vote: I do not like it

      It gave me a problem I solved already: 752B. Maybe because the problem occurs in different contests: (Technocup Div.2, Technocup Div. 1, and official Technocup). Can you look into this? thanks

»
3 months ago, # |
Rev. 2   Vote: I like it +3 Vote: I do not like it

It would be better if it was possible to change recommendations (it's showing easier problems :) ). What can I do if I need harder problems?

»
3 months ago, # |
  Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by mohabamr (previous revision, new revision, compare).

»
3 months ago, # |
  Vote: I like it +5 Vote: I do not like it

have done all the problems but no new recommends

is that a bug ?

  • »
    »
    3 months ago, # ^ |
      Vote: I like it +5 Vote: I do not like it

    nope, the beta version allows you only 10 static problems, but very soon I am gonna change this.

»
3 months ago, # |
  Vote: I like it 0 Vote: I do not like it

Hey,can you please provide a way to generate team recommendations for ICPC practice?

That would be great.

  • »
    »
    3 months ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    that's a great idea, promise you I will work on that.

»
3 months ago, # |
  Vote: I like it 0 Vote: I do not like it

It recommended me problems that I already solved on the other division.

»
3 months ago, # |
  Vote: I like it 0 Vote: I do not like it

why am i facing this ?

  • »
    »
    3 months ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    Codeforces itself crashed for a while, I don't know if this is related.

    When did you face such an error?

    • »
      »
      »
      3 months ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      I having a problem with recommendation issue . After a while its ok , it successfully retreived the recommended problems .

      • »
        »
        »
        »
        3 months ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        I recommend anyone who had a problem to try again, it's just the server's load is too much.

»
3 months ago, # |
  Vote: I like it +3 Vote: I do not like it

Currently, anyone with a person username and email(easy to get) can access it with his choice of password. This way the original person can't access his own account.

  • »
    »
    3 months ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    I know there is no way of validating, but the original purpose for this website was for a small team to use, I did not expect people would interacte with it like that.

    Anyway:

    1. If anyone faces a problem; they can contact me so I can validate the users myself for now
    2. I will see if I can validate the email with the username from Codeforces API
    • »
      »
      »
      3 months ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      just a question, why do you even need a login for your website? why can't user just provide their username to see the recommendations?

      • »
        »
        »
        »
        3 months ago, # ^ |
          Vote: I like it 0 Vote: I do not like it
        1. a basic auth tool to be used later
        2. needed in the evaluation section, to make sure it's the same user
        3. email to send notifications
»
3 months ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

what if i solved 10 problems,will it show next 10 problems??

»
3 months ago, # |
  Vote: I like it 0 Vote: I do not like it

Its only showing me div2 A,B,Cs. Anyway I can get harder problems?

  • »
    »
    3 months ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    The output is based on your solving history.

    Anyway, the re-generation of the recommendation set is a feature I am working on, the next release will be out in 10 days or so.

»
3 months ago, # |
  Vote: I like it 0 Vote: I do not like it

The character '| in my username is not supported :p Can't sign up.

  • »
    »
    3 months ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    I just tested that and it's working fine, please try again or DM me your info so I can create an account for you.