Symbolic Problem Variant Generator for Practice Sets

Symbolic Problem Variant Generator for Practice Sets

ISEF Category: Systems Software

Ready to Turn This Idea Into a Real Project?

This guide was put together with the help of AI research tools to give you a solid starting point. But a competitive science fair project lives in the details: refining your research question, fine-tuning your variables, analyzing your data, and presenting your findings like a seasoned scientist.

For next steps tailored to your interests, skill level, and timeline, work one-on-one with a MehtA+ mentor. Learn more about MehtA+ Science & Engineering Research Mentorship →

Subcategory: Online Learning  ·  Difficulty: Advanced  ·  Setup: University Lab  ·  Time: Full Year

The Hook

Two students can solve the same math skill and still get two different numbers. That sounds small, but it changes cheating, practice, and fairness in a big way. If your system can change the numbers without changing the skill, you have a real software research project. The hard part is proving the variants are truly equivalent.

What Is It?

This project builds software that takes one seed problem and turns it into many new versions that test the same idea. Think of it like a recipe that swaps the ingredients, but keeps the dish the same. In math education, these are called isomorphic problems, which means the surface details change while the underlying structure stays fixed.

SymPy is a Python library for symbolic math. Symbolic math means the computer works with expressions, like x + 3 or 2x = 10, instead of only numeric answers. You can use SymPy to generate algebra, geometry, or word problem variants by changing variables, coefficients, or conditions while preserving the logic of the original problem.

The research challenge is not just making new questions. You also need to test psychometric equivalence, which means the variants should measure the same skill at about the same level of difficulty. That turns a coding idea into a research question about fairness, assessment quality, and item design.

Why This Is a Good Topic

This is a strong science fair topic because you can test something concrete, not just build a demo. You can measure whether different variants have similar solution paths, error rates, and time-to-solve. The project connects to online learning, test security, and fair assessment, which are real problems in education software. You can also grow it from a small prototype into a serious study with clean data and strong analysis.

Research Questions

  • How does changing coefficient size in isomorphic algebra problems affect student accuracy?
  • What is the effect of preserving problem structure but changing surface numbers on solve time?
  • Does a SymPy-generated problem set produce similar difficulty scores across variants?
  • To what extent do different wordings of the same symbolic problem change error patterns?
  • Which generation rules create variants that students rate as most similar in difficulty?
  • How does randomizing problem parameters affect the chance that two students share identical answers?

Basic Materials

  • Laptop or desktop computer with Python installed.
  • Python package manager, such as pip.
  • SymPy library.
  • Jupyter Notebook or Google Colab.
  • Spreadsheet software for tracking item performance.
  • Sample seed problems in algebra or precalculus.
  • Student test group or classmates for pilot testing.
  • Timer for recording solve time.
  • Survey form for perceived difficulty ratings.

Advanced Materials

  • Laptop or desktop computer with Python installed.
  • SymPy library and NumPy.
  • Pandas for data cleaning.
  • SciPy for statistical tests.
  • Jupyter Notebook for analysis.
  • Item response theory software or a Python package for psychometric modeling.
  • A larger bank of seed problems across one topic.
  • Eye-tracking or screen-recording software, if available.
  • Institutional review board guidance or school research approval documents.

Software & Tools

  • SymPy: Generates symbolic problem variants and checks whether transformed equations stay mathematically equivalent.
  • Python: Runs the generator, stores outputs, and automates analysis.
  • Jupyter Notebook: Lets you test rules, inspect outputs, and document each experiment.
  • Google Forms: Collects student ratings on difficulty and similarity.
  • Pandas: Organizes response data and helps compare item performance across variants.

Experiment Steps

  1. Define one narrow skill, such as linear equations, function transformations, or geometry ratios.
  2. Choose the exact parts of the seed problem that can change without changing the skill being tested.
  3. Build a rule set in SymPy that generates multiple isomorphic versions from the same template.
  4. Design a scoring plan that compares accuracy, time, and perceived difficulty across variants.
  5. Pilot the items with a small group and check whether any version behaves like an outlier.
  6. Revise the generator rules until the variants look different on the surface but stay equivalent in performance.

Common Pitfalls

  • Changing the problem structure while thinking only the numbers changed, which breaks isomorphism.
  • Making every variant harder by accident because one form needs extra algebra steps.
  • Testing only one topic, which makes the results too narrow to support broader claims.
  • Ignoring wording changes, which can confuse students even when the math stays the same.
  • Using too few pilot responses, which makes the psychometric comparison noisy and weak.

What Makes This Competitive

A stronger version of this project goes past randomization and into validation. You would compare item performance across multiple problem families, then test whether your generator keeps difficulty stable. Good entries often include a formal equivalence argument, a clear metric for fairness, and a thoughtful analysis of where the system fails. If you can show that some transformation rules work and others do not, your project starts to look like real education technology research.

Project Variations

  • Generate isomorphic fractions or ratio problems for middle school practice and compare their item difficulty.
  • Build a variant generator for geometry proof prompts, then test whether wording changes alter student performance.
  • Create algebra word problems with randomized contexts, then measure whether context type affects accuracy more than the math itself.

Learn More

  • SymPy Documentation: Read the official docs to learn symbolic expressions, equation solving, and programmatic transformations on the SymPy site.
  • MIT OpenCourseWare Introduction to Algorithms: Use the free course materials to strengthen your thinking about problem generation logic and testing.
  • Psychometrika: Search the journal for articles on item equivalence, test fairness, and measurement quality.
  • PubMed: Search for review articles on educational assessment, response accuracy, and student performance measures.
  • National Center for Education Statistics: Explore public resources on assessment design and educational measurement from the U.S. government.
Shopping Cart