Answers.Body: <p>A successor function is a function that generates a next state from the current state, plus the choices that affect state changes. In e.g. the 8 queens problem, a state might be the location of 5 queens so far, the choice might be where to put the next queen, and the successor function would return the resulting state with 6 queens on the board.</p>
  
  <p>Typically a solver will store/cache a current state, make a choice, and use the successor function to discover what the next state is. Then it may call the heuristic function on the next state and make a decision whether to continue that search deeper into the search tree (or recursion) or try another choice at the current state.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2018-11-23T16:29:32.060Z
Answers.LastActivityDate: 2018-11-23T16:29:32.060Z
Answers.UserDisplayName: Neil Slater
Body: <p>In Constraint Satisfaction Problems (CSPs), a <a href="https://www.cpp.edu/%7Eftang/courses/CS420/notes/CSP.pdf#page=2" rel="nofollow noreferrer">state</a> is any data structure that supports</p>
  <ul>
  <li>a successor function,</li>
  <li>a heuristic function, and</li>
  <li>a goal test.</li>
  </ul>
  <p>In this context, what is a <em>successor function</em>?</p>
  
Tags: <terminology><definitions><search><constraint-satisfaction-problems>
Title: What is a successor function (in CSPs)?
UserDisplayName: Abbas Ali
ThreadText: # What is a successor function (in CSPs)?
  
  (Asked by: username_0 on 2018-11-23)
  
  In Constraint Satisfaction Problems (CSPs), a [state](https://www.cpp.edu/%7Eftang/courses/CS420/notes/CSP.pdf#page=2) is any data structure that supports
  
  * a successor function,
  * a heuristic function, and
  * a goal test.
  
  In this context, what is a *successor function*?
  
  **Tags:** terminology, definitions, search, constraint-satisfaction-problems
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2018-11-23. Score: 1 | Accepted answer
  
  A successor function is a function that generates a next state from the current state, plus the choices that affect state changes. In e.g. the 8 queens problem, a state might be the location of 5 queens so far, the choice might be where to put the next queen, and the successor function would return the resulting state with 6 queens on the board.
  
  Typically a solver will store/cache a current state, make a choice, and use the successor function to discover what the next state is. Then it may call the heuristic function on the next state and make a decision whether to continue that search deeper into the search tree (or recursion) or try another choice at the current state.
  
  
  ---
  
  