OpenReview
  • Overview
    • OpenReview Documentation
  • Reports
    • Conferences
      • OpenReview NeurIPS 2021 Summary Report
      • OpenReview ECCV 2020 Summary Report
  • Getting Started
    • Frequently Asked Questions
      • I accidentally withdrew a submission, what do I do?
      • How do I add a Program Chair to my venue?
      • When will I be able to withdraw my submission?
      • I want to delete my withdrawn or desk-rejected paper, what do I do?
      • An author of a submission cannot access their own paper, what is the problem?
      • What should I do if I find a vulnerability in OpenReview?
      • How can I report a bug or request a feature?
      • What is the difference between due date (duedate) and expiration date (expdate)?
      • Will Reviewers be notified of their Assignments?
      • What is the max file size for uploads?
      • Why are the "rating" and "confidence" fields in my PC Console wrong?
      • What should I do if my question is not answered here?
      • My Profile is "Limited". What does that mean?
      • What field types are supported in the forms?
      • How do I recruit reviewers?
      • How do I obtain a letter of proof for my services as a reviewer?
      • How do I complete my tasks?
      • Can I automatically transfer my Expertise Selection to another venue?
      • Why does it take two weeks to moderate my profile?
      • What do the different 'status' values mean in the message logs?
      • I am an Independent Researcher, how do I sign up?
      • How do I locate the date a submission is made public?
      • I am a reviewer but I can't access my assigned submissions, what do I do?
      • Reviewers for my venue cannot see their assigned submissions, what should I do?
      • I am a reviewer and I don't have papers for Expertise Selection, what do I do?
      • How do I upload a publication with a license that is not listed?
      • I didn't receive a password reset email, what do I do?
      • How do I add/change an author of my submission after the deadline?
      • How do I find a venue id?
      • Why can't I update my DBLP link?
    • Using the API
      • Installing and Instantiating the Python client
      • Groups
    • Hosting a venue on OpenReview
      • Creating your Venue Instance
      • Navigating your Venue Pages
      • Customizing your submission form
      • Enabling Supplementary Material Upload
      • Changing your submission deadline
      • Enabling an Abstract Registration Deadline
    • Creating an OpenReview Profile
      • Signing up for OpenReview
      • Resending an activation link
      • Expediting Profile Activation
      • Add or remove a name from your profile
      • Add or remove an email address from your profile
      • Finding your profile ID
      • Entering Institutional Data
      • Importing papers from DBLP
      • Manually adding a publication to your profile
      • Finding and adding a Semantic Scholar URL to your profile
      • Finding and adding your ACL Anthology URL to your profile
      • Merging Profiles
    • Customizing Forms
    • Using the New Forum Page
    • Live Chat on the Forum Page
  • Workflows
    • Example Workflow
    • ARR Commitment Venues
    • Exercises for workflow chairs
      • Prerequisites
      • Exercise: Posting LLM generated reviews
  • How-To Guides
    • Modifying Venue Homepages
      • How to customize your venue homepage
      • How to modify the homepage layout to show decision tabs
    • Managing Groups
      • How to Recruit and Remind Recruited Reviewers
      • How to have multiple Reviewer or Area Chair groups
      • How to Add and Remove Members from a Group
      • Publication Chairs
      • How to Copy Members from One Group to Another
    • Workflow
      • How to Programmatically Post Support Request Form
      • How to test your venue workflow
      • How to Post a Test Submission
      • How to support different tracks for a venue
      • How to Make Submissions Available Before the Submission Deadline
      • How to Change the Expiration Date of the Submission Invitation
      • Desk Reject Submissions that are Missing PDFs
      • How to begin the Review Stage while Submissions are Open
      • How to Change Who can Access Submissions After the Deadline
      • How to Enable Commenting on Submissions
      • How to Set a Custom Deadline for Withdrawals
      • How to Enable an Ethics Review Stage
      • How to Hide Submission Fields from Reviewers
      • How to modify the Review, Meta Review, and Decision Forms
      • How to release reviews
      • How to Enable the Rebuttal Period
      • How to Undo a Paper Withdrawal
      • How to enable Camera Ready Revision Upload for accepted papers
      • How to make papers public after decisions are made
      • How to enable bidding for Senior Area Chair Assignment
      • How to release the identities of authors of accepted papers only
      • How to enable the Review Revision Stage
    • Paper Matching and Assignment
      • How to Compute Conflicts Between Users
      • How to Post a Custom Conflict
      • How to create your own Conflict Policy
      • How to Bid on Submissions
      • How to add/remove bids programmatically
      • How to do manual assignments
      • How to do automatic assignments
        • How to setup paper matching by calculating affinity scores and conflicts
        • How to run a paper matching
        • How to modify the proposed assignments
        • How to deploy the proposed assignments
        • How to modify assignments after deployment
      • How to enable Reviewer Reassignment for Area Chairs
      • How to Sync Manual and Automatic Assignments
      • How to Compute Affinity Scores
      • How to Undo Deployed Assignments
      • How to Modify Reviewer Assignments as an Area Chair
      • How to Get all Assignments for a User
      • How to Update Custom Max Papers for Reviewers or ACs
      • How to Make Assignments using Subject Areas
    • Communication
      • How to send messages through the UI
      • How to customize emails sent through OpenReview
      • How to send messages with the python client
      • How to Send Decision Notifications Using the UI
      • How to view messages sent through OpenReview
      • How to email the authors of accepted submissions
      • How to get email adresses
    • Submissions, comments, reviews, and decisions
      • How to add formatting to reviews or comments
      • How to submit a Review Revision
      • How to add formulas or use mathematical notation
      • How to edit a submission after the deadline - Authors
      • How to upload paper decisions in bulk
      • How to hide/reveal fields
      • Update camera-ready PDFs after the deadline expires
    • Data Retrieval and Modification
      • How to check the API version of a venue
      • How to view Camera-Ready Revisions
      • How to Export all Submission Attachments
      • How to loop through Accepted Papers and print the Authors and their Affiliations
      • How to add/remove fields from a submission
      • How to manually change the readers of a note
      • How to post/delete an Official Review using Python
      • How to Get Profiles and Their Relations
      • How to Get All the Reviews that I have written and their Corresponding Submissions
      • How to Get All Registration Notes
      • How to Get All Submissions
      • How to Get All Reviews
      • How to Export All Reviews into a CSV
      • How to get all Rebuttals
      • How to Get All Official Comments
      • How to Get All MetaReviews
      • How to Get All Decisions
      • How to Get All Venues
      • How to Retrieve Data for ACM Proceedings
      • How to Get Reviewer Ratings
  • Reference
    • API V1
      • OpenAPI definition
      • Entities
        • Edge
          • Fields
        • Note
          • Fields
        • Invitation
    • API V2
      • OpenAPI definition
      • Entities
        • Edge
          • Fields
        • Group
          • Fields
        • Note
          • Fields
        • Invitation
          • Types and Structure
          • Fields
          • Specifiers
          • Dollar Sign Notation
        • Edit
          • Fields
          • Inference
    • Stages
      • Revision
      • Registration Stage
      • Bid Stage
      • Review Stage
      • Rebuttal Stage
      • Meta Review Stage
      • Decision Stage
      • Comment Stage
      • Submission Revision Stage
      • Post Submission Stage
      • Post Decision Stage
      • Ethics Review Stage
    • Default Forms
      • Default Submission Form
      • Default Registration Form
      • Default Comment Form
      • Default Review Form
      • Default Rebuttal Form
      • Default Meta Review Form
      • Default Decision Form
      • Default Decision Notification
      • Default Ethics Review Form
    • OpenReview TeX
      • Common Issues with LaTeX Code Display
      • OpenReview TeX support
    • Mental Model on Blind Submissions and Revisions
Powered by GitBook
On this page
  • Running Paper Matching
  • Modifying Proposed Assignments
  • Troubleshooting Matcher

Was this helpful?

Export as PDF
  1. How-To Guides
  2. Paper Matching and Assignment
  3. How to do automatic assignments

How to run a paper matching

PreviousHow to setup paper matching by calculating affinity scores and conflictsNextHow to modify the proposed assignments

Last updated 1 year ago

Was this helpful?

Running Paper Matching

In order to run the matching for Senior Area Chairs, Area Chairs, and Reviewers, you must first run from the venue request form.

Once that is done, a link for 'Paper Assignments' should appear on your Program Chair console.

Clicking on one of the assignment links will bring you to the assignment page, where you can create a new matching configuration. If members of your Senior Area Chair, Area Chair or Reviewer group have profiles without publications, you will need to select ‘Yes’ for ‘Allow Zero Score Assignments’ in order to obtain a solution. Please note that all members of a group must have OpenReview profiles in order for the automatic assignment algorithm to run. Any members without profiles must be removed from the group before this step.

User Demand
  • The number of users that should be assigned to each paper

Max Papers
  • The maximum number of papers that can be assigned to each reviewer

Min papers
  • The minimum number of papers that can be assigned to each reviewer

Alternates
  • How many alternate reviewers should be saved per paper

Paper Invitation
  • Invitation of the submissions that will be assigned in this matching

  • Defaults to venue_id/-/Submission for single blind and venue_id/-/Blind_Submission for double blind venues

Match Group
  • The group ID of users to be assigned to submissions

Scores Specification
  • JSON providing further details and customization to scores.

  • Each key represents an edge invitation (affinity score, bid, etc.). Weight can be added to a given score value with the numerical field 'Weight'. 'Default' is a numerical value that is used when there is not an edge for a specific reviewer-paper pair. Finally, 'translate_map' is a map function that translates an edge label value into a number.

    In the example below, the aggregate score being used by the optimizer is: weight * (affinity score) + weight * (translate_map(bid))

  • {
        "Example_Venue/2022/Conference/Reviewers/-/Affinity_Score": {
            "weight": 1,
            "default": 0
        },
        "Example_Venue/2022/Conference/Reviewers/-/Bid": {
            "weight": 1,
            "default": 0,
            "translate_map": {
                "Very High": 1,
                "High": 0.75,
                "Neutral": 0,
                "Low": -0.5,
                "Very Low": -1
            }
        }
    }
Conflicts Invitation
  • Invitation for storing conflicts between users and papers

  • Defaults to venue_id/user_group/-/Conflict

Custom User Demand Invitation
  • If certain papers require a custom number of assigned users, Program Chairs can create edges determining these requests and provide the invitation for used for those edges here.

  • Defaults to venue_id/user_group/-/Custom_User_Demands

Custom Max Papers Invitation
  • Some reviewers may submit requests to only have a certain number of assigned papers. The matcher will convert those requests into edges. This determines the invitation that will be used for those edges.

  • Defaults to venue_id/user_group/-/Custom_Max_Papers

Solver
  • Which algorithm (MinMax, Fairflow, or Randomized) will be used to generate automatic assignments.

  • Defaults to MinMax

Allow Zero Score Assignments
  • Whether or not assignments with scores of 0 should be allowed. If a reviewer does not have any publications listed on their profile, they will have an affinity score of 0 with all submissions. Therefore, if you have users without publications, you will need to select "yes" in order to get a solution.

Randomized Probability Limits
  • If you select "Randomized" for the solver, it will select a random assignment that maximizes expected total affinity, subject to the probability limit provided here. What this means is that for each reviewer-paper assignment, the probability of that match being generated in a random assignment is limited to this value. This should make the outcome of the matching more difficult to predict.

After filling out the matching configuration form and hitting submit, you should see the following:

You can view, edit or copy the values you filled out in the matching form. When you are happy with your configuration, you should hit 'Run Matcher' and wait until its status is 'Complete'.

Modifying Proposed Assignments

Be careful before deploying proposed assignments! Do not deploy them unless you are sure that you are satisfied with them. Undoing a deployment is difficult and in most cases it requires the OpenReview staff intervention which can only be done during office hours.

Troubleshooting Matcher

If you get "No Solution" after running the matcher, you can view the configuration to see the entire error message. If the message is something like the following:

  • Error Message: Total demand (150) is out of range when min review supply is (34) and max review supply is (100)

that means that your constraints require more reviewers or area chairs than you currently have. The total demand is equal to (number of submissions * user demand) + (number of submissions * alternates). The max review supply is the number of reviewers available * max papers and the review supply is the number of reviewers available * min papers. Your total demand must fall within this range in order to obtain a solution.

Note that completion of this step does not make assignments, it only creates a proposed assignment configuration. Those assignments will need to be deployed before Reviewers or Area Chairs will see them.

You can learn more about our automatic paper matching algorithm from its . To create a new matching, click the 'New Assignment Configuration'. This will pull up a form with some default values pertaining to your matching settings:

MinMax: Optimizes the scores while respecting the min and max quotas for each paper and reviewer. You can read more about MinMax .

Fairflow: Tries to make every match have at least some minimum affinity. You can read more about Fairflow .

Randomized: Generates randomized assignments and selects the assignment that maximizes expected total affinity without breaking the probability limits. You can read more about the Randomized solver .

You can read more about all solver options .

Once the Matching algorithm completes, the proposed assignments will be generated with options to browse them, view statistics or deploy proposed assignments. If you click ‘Browse Assignments’ you will be brought to the edge browser, where you can browse, edit, and create proposed assignments. You can read more about modifying proposed assignments .

GitHub repository
here
here
here
here
here
Setup Paper Matching