KR20240012720A - A technique for diagnosing question-solving skills of a user - Google Patents

A technique for diagnosing question-solving skills of a user Download PDF

Info

Publication number
KR20240012720A
KR20240012720A KR1020220090050A KR20220090050A KR20240012720A KR 20240012720 A KR20240012720 A KR 20240012720A KR 1020220090050 A KR1020220090050 A KR 1020220090050A KR 20220090050 A KR20220090050 A KR 20220090050A KR 20240012720 A KR20240012720 A KR 20240012720A
Authority
KR
South Korea
Prior art keywords
value
skill
unit
range
user
Prior art date
Application number
KR1020220090050A
Other languages
Korean (ko)
Inventor
최민규
제갈윤
Original Assignee
주식회사 튜링
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 튜링 filed Critical 주식회사 튜링
Priority to KR1020220090050A priority Critical patent/KR20240012720A/en
Publication of KR20240012720A publication Critical patent/KR20240012720A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education
    • G06Q50/205Education administration or guidance
    • G06Q50/2057Career enhancement or continuing education service
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B7/00Electrically-operated teaching apparatus or devices working with questions and answers
    • G09B7/06Electrically-operated teaching apparatus or devices working with questions and answers of the multiple-choice answer-type, i.e. where a given question is provided with a series of answers and a choice has to be made from the answers
    • G09B7/10Electrically-operated teaching apparatus or devices working with questions and answers of the multiple-choice answer-type, i.e. where a given question is provided with a series of answers and a choice has to be made from the answers wherein a set of answers is common to a plurality of questions
    • G09B7/12Electrically-operated teaching apparatus or devices working with questions and answers of the multiple-choice answer-type, i.e. where a given question is provided with a series of answers and a choice has to be made from the answers wherein a set of answers is common to a plurality of questions characterised by modifying the teaching programme in response to a wrong answer, e.g. repeating the question, supplying further information

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • Tourism & Hospitality (AREA)
  • Data Mining & Analysis (AREA)
  • Human Resources & Organizations (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Strategic Management (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • Algebra (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Evolutionary Biology (AREA)
  • Operations Research (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Databases & Information Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

본 개시의 몇몇 실시예에 의한 장치의 프로세서에 의해 사용자의 문제 풀이 실력을 진단하는 방법이 개시된다. 상기 방법은: 복수의 문제 중 제1 문제를 상기 사용자에게 제공하는 단계; 상기 제1 문제에 대한 풀이 데이터를 상기 사용자의 사용자 단말기로부터 수신하는 단계; 상기 풀이 데이터의 정답 여부에 기초하여 상기 제1 문제와 관련된 단원의 실력 범위를 구성하는 최소 실력 값 및 최대 실력 값 중 하나를 선택하는 단계; 상기 제1 문제의 난이도 값이 상기 최소 실력 값 및 상기 최대 실력 값 중 선택된 값보다 큰지 여부에 기초하여 상기 선택된 값을 상기 제1 문제의 난이도 값으로 변경할지 여부를 결정하는 단계; 및 상기 선택된 값이 상기 제1 문제의 난이도 값으로 변경된 경우, 상기 단원과 의존 관계가 있는 의존 단원의 실력 범위를 상기 단원의 변경된 실력 범위와 동일하게 변경하는 단계;를 포함할 수 있다. A method of diagnosing a user's problem-solving skills using a processor of a device according to some embodiments of the present disclosure is disclosed. The method includes: providing a first problem among a plurality of problems to the user; Receiving solution data for the first problem from the user's user terminal; selecting one of a minimum skill value and a maximum skill value constituting a skill range of a unit related to the first problem based on whether the solution data is correct; determining whether to change the selected value to the difficulty value of the first problem based on whether the difficulty value of the first problem is greater than a selected value among the minimum skill value and the maximum skill value; and when the selected value is changed to the difficulty value of the first problem, changing the skill range of the dependent unit that has a dependency relationship with the unit to be the same as the changed skill range of the unit.

Description

사용자의 문제 풀이 실력을 진단하는 기법{A TECHNIQUE FOR DIAGNOSING QUESTION-SOLVING SKILLS OF A USER}A technique for diagnosing a user's problem-solving skills {A TECHNIQUE FOR DIAGNOSING QUESTION-SOLVING SKILLS OF A USER}

본 개시는 사용자의 문제 풀이 실력을 진단하는 기법에 관한 것으로, 구체적으로 사용자에게 문제를 제공한 후 수신된 풀이 데이터의 정답 여부에 기초하여 문제와 관련된 단원의 실력 범위를 구성하는 최소 실력 값 및 최대 실력 값 중 업데이트를 수행할 값을 선택하고, 선택된 값이 문제의 난이도 값보다 큰지 여부에 기초하여 선택된 값을 난이도 값으로 변경할지 여부를 결정하고 문제와 관련된 단원과 의존 관계가 있는 단원의 실력 범위도 같이 업데이트하는 장치 및 그 방법에 관한 것이다. The present disclosure relates to a technique for diagnosing a user's problem-solving skills. Specifically, the minimum skill value and maximum skill value constituting the skill range of the unit related to the problem are based on whether the solution data received after providing the problem to the user is correct. Select which of the skill values to perform an update on, decide whether to change the selected value to the difficulty value based on whether the selected value is greater than the difficulty value of the problem, and determine the skill range of the unit that has a dependency relationship with the unit related to the problem. It also relates to an updating device and method.

최근 인터넷과 전자장치의 활용이 각 분야에서 활발히 이루어지며 교육 환경 역시 빠르게 변화하고 있다. 특히, 다양한 교육 매체의 발달로 학습자는 보다 폭넓은 학습 방법을 선택하고 이용할 수 있게 되었다. 그 중에서도 인터넷을 통한 교육 서비스는 시간적, 공간적 제약을 극복하고 저비용의 교육이 가능하다는 이점 때문에 주요한 학습 수단으로 자리매김하게 되었다.Recently, the use of the Internet and electronic devices has become active in various fields, and the educational environment is also rapidly changing. In particular, the development of various educational media has enabled learners to select and use a wider range of learning methods. Among them, education services through the Internet have become a major means of learning due to the advantages of overcoming time and space constraints and enabling low-cost education.

이러한 경향에 부응하여 이제는 제한된 인적, 물적 자원으로 오프라인 교육에서는 불가능했던 맞춤형 교육 서비스도 제공이 가능 해졌다. 예를 들어, 학습자의 실력을 사전에 분석하여 학습자의 실력에 맞는 교육 컨텐츠를 제공함으로써, 과거의 획일적 교육 방법에서 탈피하여 학습자의 개인 역량에 따른 교육 콘텐츠를 제공하고 있다.In response to this trend, it is now possible to provide customized education services that were not possible with offline education with limited human and material resources. For example, by analyzing the learner's ability in advance and providing educational content tailored to the learner's ability, we are breaking away from the uniform education method of the past and providing educational content according to the learner's individual ability.

학생이 수학 과목에 포함된 N개의 단원에 대해서 6개의 등급으로 이산적 실력을 가지고 있다고 가정해보면, 단원 한 개 당 6등급 중 하나의 등급을 고르기 위한 경우의 수는 가지이다. 즉, 학생의 단원 별 실력은 절대적으로 존재하는 값이고 이를 진단한다는 것은 가지의 경우의 수 중에서 한가지 경우의 수를 찾는 문제가 된다. Assuming that a student has 6 discrete levels of proficiency for N units included in a math subject, the number of ways to select one of the 6 levels per unit is It is a branch. In other words, a student's ability for each unit is an absolute value, and diagnosing it means It is a problem of finding the number of one case among the number of possible cases.

만약, 단원 사의의 관계를 고려하지 않고 단원 별 실력을 찾는다고 가정하고 실력 진단을 진행하는 경우, 한 단원의 실력을 1등급 내지 6등급 중에서 찾는데 있어서 먼저 3등급 문제를 추천해주고 이를 맞히면 2등급의 실력을 가졌다고 실력을 업데이트할 수 있다. 그리고, 5등급 문제를 추천해주고 이를 맞히면 4등급 실력을 가졌다고 유추할 수 있다. 이런 식으로 한 단원에 대해 두 문제로 하나의 등급을 결정할 수 있다고 했을 때 100개의 단원이 있으면 전체 단원에 대한 학생의 실력을 진단하는데 200문제를 풀어야한다. 이 경우, 사용자의 실력을 진단하는데 너무 많은 시간이 소요된다는 문제가 발생하게 된다. If you are conducting a skill diagnosis assuming that you are looking for the skills of each unit without considering the relationship between the members and doctors, when finding a unit's skills from grades 1 to 6, a grade 3 problem is recommended first, and if you get it right, you will be awarded a grade 2 problem. If you have skills, you can update them. Also, if a level 5 problem is recommended and you get it right, it can be inferred that you have level 4 skills. In this way, if one grade can be determined with two questions for one unit, if there are 100 units, 200 questions must be solved to diagnose the student's skills for all units. In this case, a problem arises in that it takes too much time to diagnose the user's skills.

따라서, 상술한 문제점들을 극복하고, 빠르게 학생의 문제 풀이 실력을 진단할 수 있는 기술을 개발할 필요성이 절실한 실정이다.Therefore, there is an urgent need to develop technology that can overcome the above-mentioned problems and quickly diagnose students' problem-solving skills.

대한민국 특허등록번호 10-2406458 (2022.06.02 등록)Republic of Korea Patent Registration No. 10-2406458 (registered on 2022.06.02)

본 개시는 전술한 문제 및 다른 문제를 해결하는 것을 목적으로 한다. 본 개시의 몇몇 실시예가 이루고자 하는 기술적 과제는, 사용자의 문제 풀이 실력을 빠르게 진단하는 것을 그 목적으로 한다.The present disclosure aims to solve the above-described problems and other problems. The technical task sought to be achieved by some embodiments of the present disclosure aims to quickly diagnose a user's problem-solving skills.

본 개시에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 개시의 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The technical problems to be achieved in the present disclosure are not limited to the technical problems mentioned above, and other technical problems not mentioned can be clearly understood by those skilled in the art of the present disclosure from the description below. There will be.

본 개시의 몇몇 실시예에 의한 장치의 프로세서에 의해 사용자의 문제 풀이 실력을 진단하는 방법은: 복수의 문제 중 제1 문제를 상기 사용자에게 제공하는 단계; 상기 제1 문제에 대한 풀이 데이터를 상기 사용자의 사용자 단말기로부터 수신하는 단계; 상기 풀이 데이터의 정답 여부에 기초하여 상기 제1 문제와 관련된 단원의 실력 범위를 구성하는 최소 실력 값 및 최대 실력 값 중 하나를 선택하는 단계; 상기 제1 문제의 난이도 값이 상기 최소 실력 값 및 상기 최대 실력 값 중 선택된 값보다 큰지 여부에 기초하여 상기 선택된 값을 상기 제1 문제의 난이도 값으로 변경할지 여부를 결정하는 단계; 및 상기 선택된 값이 상기 제1 문제의 난이도 값으로 변경된 경우, 상기 단원과 의존 관계가 있는 의존 단원의 실력 범위를 상기 단원의 변경된 실력 범위와 동일하게 변경하는 단계;를 포함할 수 있다. A method of diagnosing a user's problem-solving skills by a processor of a device according to some embodiments of the present disclosure includes: providing a first problem among a plurality of problems to the user; Receiving solution data for the first problem from the user's user terminal; selecting one of a minimum skill value and a maximum skill value constituting a skill range of a unit related to the first problem based on whether the solution data is correct; determining whether to change the selected value to the difficulty value of the first problem based on whether the difficulty value of the first problem is greater than a selected value among the minimum skill value and the maximum skill value; and when the selected value is changed to the difficulty value of the first problem, changing the skill range of the dependent unit that has a dependency relationship with the unit to be the same as the changed skill range of the unit.

본 개시의 몇몇 실시예에 의하면, 상기 풀이 데이터의 정답 여부에 기초하여 상기 제1 문제와 관련된 단원의 실력 범위를 구성하는 최소 실력 값 및 최대 실력 값 중 하나를 선택하는 단계는: 상기 풀이 데이터가 정답인 경우, 상기 최소 실력 값을 선택하는 단계; 또는 상기 풀이 데이터가 오답인 경우, 상기 최대 실력 값을 선택하는 단계;를 포함할 수 있다. According to some embodiments of the present disclosure, the step of selecting one of the minimum skill value and the maximum skill value constituting the skill range of the unit related to the first problem based on whether the solution data is correct is: the solution data If the answer is correct, selecting the minimum skill value; Alternatively, if the solution data is an incorrect answer, selecting the maximum skill value may be included.

본 개시의 몇몇 실시예에 의하면, 상기 제1 문제의 난이도 값이 상기 최소 실력 값 및 상기 최대 실력 값 중 선택된 값보다 큰지 여부에 기초하여 상기 선택된 값을 상기 제1 문제의 난이도 값으로 변경할지 여부를 결정하는 단계는: 상기 선택된 값이 상기 최대 실력 값인 경우, 상기 제1 문제의 난이도 값이 상기 최대 실력 값보다 작을 때 상기 최대 실력 값을 상기 제1 문제의 난이도 값으로 변경한다고 결정하는 단계; 또는 상기 선택된 값이 상기 최소 실력 값인 경우, 상기 제1 문제의 난이도 값이 상기 최소 실력 값보다 클 때 상기 최소 실력 값을 상기 제1 문제의 난이도 값으로 변경한다고 결정하는 단계; 를 포함할 수 있다. According to some embodiments of the present disclosure, whether to change the selected value to the difficulty value of the first problem based on whether the difficulty value of the first problem is greater than the selected value of the minimum skill value and the maximum skill value. The step of determining is: when the selected value is the maximum skill value, determining to change the maximum skill value to the difficulty value of the first problem when the difficulty value of the first problem is less than the maximum skill value; or when the selected value is the minimum skill value, determining to change the minimum skill value to the difficulty value of the first problem when the difficulty value of the first problem is greater than the minimum skill value; may include.

본 개시의 몇몇 실시예에 의하면, 상기 복수의 문제 중 제1 문제를 상기 사용자에게 제공하는 단계는: 상기 복수의 문제 각각을 사용자에게 제공했을 때 예상되는 상기 복수의 문제와 관련된 복수의 기대 값을 산출하는 단계; 및 상기 복수의 기대 값 중 가장 작은 기대 값을 갖는 문제를 상기 제1 문제로 상기 사용자에게 제공하는 단계; 를 포함하고, 상기 복수의 기대 값 각각은, 수학식 에 의해 산출되고, 상기 는 상기 복수의 문제 중 하나인 제2 문제와 관련된 기대 값이고, 상기 c는 상기 제2 문제를 상기 사용자가 맞힐 확률 값이고, 상기 는 상기 사용자가 상기 제2 문제를 맞힐 경우 상기 제2 문제와 관련된 제1 단원과 관련된 예상되는 제1 실력 범위 및 상기 제1 단원과 의존 관계가 있는 제1 의존 단원과 관련된 예상되는 제2 실력 범위를 이용하여 산출된 제1 평균 실력 길이 값이고, 상기 는 상기 사용자가 상기 제2 문제를 틀릴 경우 상기 제1 단원과 관련된 예상되는 제3 실력 범위 및 상기 제1 의존 단원과 관련된 예상되는 제4 실력 범위를 이용하여 산출된 제2 평균 실력 길이 값일 수 있다. According to some embodiments of the present disclosure, the step of providing a first problem among the plurality of problems to the user includes: providing a plurality of expected values related to the plurality of problems expected when each of the plurality of problems is provided to the user. calculating step; and providing the user with a problem having the smallest expected value among the plurality of expected values as the first problem. Includes, and each of the plurality of expected values is expressed in the equation Calculated by, and is an expected value related to a second problem, which is one of the plurality of problems, c is a probability value of the user correcting the second problem, and is the expected first skill range associated with the first unit related to the second problem when the user correctly guesses the second problem, and the expected second skill range associated with the first dependent unit that is dependent on the first unit. It is the first average skill length value calculated using may be a second average skill length value calculated using the expected third skill range associated with the first unit and the expected fourth skill range associated with the first dependent unit when the user answers the second problem incorrectly. .

본 개시의 몇몇 실시예에 의하면, 업데이트되기 전의 상기 제1 단원의 제5 실력 범위는, 제1 최소 실력 값보다 크거나 같고 제1 최대 실력 값보다 작거나 같은 범위를 갖고, 상기 제1 실력 범위는, 제2 최소 실력 값보다 크거나 같고 제1 최대 실력 값보다 작거나 같은 범위를 갖되, 상기 제2 최소 실력 값은 상기 제1 최소 실력 값이 상기 제2 문제에 할당된 난이도 값보다 큰 경우 상기 제1 최소 실력 값과 동일한 값을 갖고, 상기 제1 최소 실력 값이 상기 제2 문제에 할당된 난이도 값보다 작은 경우 상기 제2 문제에 할당된 난이도 값과 동일한 값을 갖고, 상기 제2 실력 범위는, 상기 제2 최소 실력 값보다 크거나 같고 상기 제1 최대 실력 값보다 작거나 같은 범위를 갖고, 상기 제3 실력 범위는, 상기 제1 최소 실력 값보다 크거나 같고 제2 최대 실력 값보다 작거나 같은 범위를 갖되, 상기 제2 최대 실력 값은 상기 제1 최대 실력 값이 상기 제2 문제에 할당된 난이도 값보다 작은 경우 상기 제1 최대 실력 값과 동일한 값을 갖고, 상기 제1 최대 실력 값이 상기 제2 문제에 할당된 난이도 값보다 큰 경우 상기 제2 문제에 할당된 난이도 값과 동일한 값을 갖고, 상기 제4 실력 범위는, 상기 제1 최소 실력 값보다 크거나 같고 상기 제2 최대 실력 값보다 작거나 같은 범위를 가질 수 있다. According to some embodiments of the present disclosure, the fifth skill range of the first unit before being updated has a range greater than or equal to the first minimum skill value and less than or equal to the first maximum skill value, and the first skill range has a range that is greater than or equal to the second minimum skill value and less than or equal to the first maximum skill value, where the second minimum skill value is greater than the difficulty value assigned to the second problem. Has the same value as the first minimum skill value, has the same value as the difficulty value assigned to the second problem if the first minimum skill value is less than the difficulty value assigned to the second problem, and has the second skill value The range has a range that is greater than or equal to the second minimum skill value and is less than or equal to the first maximum skill value, and the third skill range is greater than or equal to the first minimum skill value and is less than the second maximum skill value. has a range that is less than or equal to that of the first maximum skill value, and the second maximum skill value has the same value as the first maximum skill value when the first maximum skill value is less than the difficulty value assigned to the second problem, and the first maximum skill value is less than or equal to the difficulty value assigned to the second problem. If the value is greater than the difficulty value assigned to the second problem, the fourth skill range has a value equal to the difficulty value assigned to the second problem, and the fourth skill range is greater than or equal to the first minimum skill value and the second maximum skill range is greater than or equal to the first minimum skill value. It can have a range that is less than or equal to the skill value.

본 개시의 몇몇 실시예에 의하면, 상기 제1 평균 실력 길이 값은, 상기 제1 실력 범위 및 상기 제2 실력 범위 각각을 이용하여 산출된 복수의 제1 실력 길이 값 및 복수의 단원 중 상기 제1 단원 및 상기 제1 의존 단원을 제외한 적어도 하나의 나머지 단원에 대한 적어도 하나의 실력 범위를 이용하여 산출된 적어도 하나의 실력 길이 값의 평균을 구해서 산출된 값이고, 상기 제2 평균 실력 길이 값은, 상기 제3 실력 범위 및 상기 제4 실력 범위 각각을 이용하여 산출된 복수의 제2 실력 길이 값 및 상기 적어도 하나의 실력 길이 값의 평균을 구해서 산출된 값일 수 있다. According to some embodiments of the present disclosure, the first average skill length value is, the first skill length value calculated using each of the first skill range and the second skill range, and the first skill length value among the plurality of units. It is a value calculated by calculating the average of at least one skill length value calculated using at least one skill range for the unit and at least one remaining unit excluding the first dependent unit, and the second average skill length value is, It may be a value calculated by calculating the average of a plurality of second skill length values calculated using each of the third skill range and the fourth skill range and the at least one skill length value.

본 개시의 몇몇 실시예에 의하면, 상기 복수의 제1 실력 길이 값 각각은, 상기 제1 최대 실력 값에서 상기 제2 최소 실력 값을 뺀 값이고, 상기 복수의 제2 실력 길이 값 각각은, 상기 제2 최대 실력 값에서 상기 제1 최소 실력 값을 뺀 값일 수 있다. According to some embodiments of the present disclosure, each of the plurality of first skill length values is a value obtained by subtracting the second minimum skill value from the first maximum skill value, and each of the plurality of second skill length values is the It may be a value obtained by subtracting the first minimum skill value from the second maximum skill value.

본 개시의 몇몇 실시예에 의하면, 상기 복수의 기대 값 중 가장 작은 기대 값을 갖는 문제를 상기 제1 문제로 상기 사용자에게 제공하는 단계는: 상기 가장 작은 기대 값을 갖는 문제가 복수 개인 경우 가장 작은 기대 값을 갖는 문제들 중 랜덤하게 하나의 문제를 상기 제1 문제로 선택하여 상기 사용자에게 제공하는 단계;를 포함할 수 있다. According to some embodiments of the present disclosure, the step of providing a problem with the smallest expected value among the plurality of expected values to the user as the first problem is: When there are a plurality of problems with the smallest expected value, the smallest expected value is: It may include randomly selecting one problem among problems with an expected value as the first problem and providing it to the user.

본 개시의 몇몇 실시예에 의하면, 상기 방법은: 상기 사용자가 문제 풀이 실력을 최초로 진단하는 경우, 상기 복수의 기대 값을 산출하기 전에 복수의 단원 각각이 기 설정된 최소 실력 값보다 크거나 같고 기 설정된 최대 실력 값보다 작거나 같은 초기 실력 범위를 갖도록 복수의 단원 각각의 실력 범위를 초기화하는 단계;를 더 포함할 수 있다. According to some embodiments of the present disclosure, the method is: When the user first diagnoses the problem-solving skill, each of the plurality of units is greater than or equal to a preset minimum skill value before calculating the plurality of expected values. It may further include initializing the skill range of each of the plurality of units to have an initial skill range that is less than or equal to the maximum skill value.

본 개시의 몇몇 실시예에 의하면, 상기 확률 값은, 상기 확률 값을 산출하는 방법들 중 상기 제2 문제와 관련된 제1 단원의 개수에 기초하여 선택된 하나의 방법에 의해 결정되고, 상기 방법들은: 상기 제2 문제와 관련된 상기 제1 단원이 한 개인 경우 선택되는 제1 방법; 및 상기 제2 문제와 관련된 상기 제1 단원이 복수 개인 경우 선택되는 상기 제1 방법과 상이한 제2 방법;을 포함할 수 있다. According to some embodiments of the present disclosure, the probability value is determined by one method selected based on the number of first units related to the second problem among methods for calculating the probability value, the methods being: a first method selected when there is only one first unit related to the second problem; and a second method different from the first method selected when there are a plurality of first units related to the second problem.

본 개시의 몇몇 실시예에 의하면, 상기 제1 방법은, 상기 제1 최소 실력 값 및 상기 제1 최대 실력 값을 이용하여 상기 단원에 대한 제1 평균 실력 값을 산출하는 단계; 및 상기 제2 문제에 할당된 난이도 값 및 상기 제1 평균 실력 값을 이용하여 상기 확률 값을 산출하는 단계; 를 포함하고, 상기 확률 값은, 수학식 에 의해 산출되고, 상기 는 상기 확률 값이고, 상기 는 상기 제2 문제의 난이도 오차를 최소화하도록 보정하는 기 설정된 제1 파라미터 값이고, 상기 는 상기 제2 문제를 상기 사용자가 찍어서 맞힐 확률을 보정하도록 문제 타입에 따라 값이 변화하는 제2 파라미터 값이고, 상기 는 상기 제2 문제에 할당된 난이도 값이고, 상기 은 상기 제1 평균 실력 값이고, 상기 는 기 설정된 상수 값일 수 있다. According to some embodiments of the present disclosure, the first method includes calculating a first average skill value for the unit using the first minimum skill value and the first maximum skill value; and calculating the probability value using the difficulty value assigned to the second problem and the first average skill value. , and the probability value is expressed by the equation Calculated by, and is the probability value, and is a preset first parameter value corrected to minimize the difficulty error of the second problem, is a second parameter value whose value changes depending on the problem type to correct the probability of the user guessing the second problem correctly, and is the difficulty value assigned to the second problem, and is the first average skill value, and may be a preset constant value.

본 개시의 몇몇 실시예에 의하면, 상기 제2 방법은: 상기 제2 문제와 관련된 복수의 제1 단원의 업데이트되기 전의 실력 범위에 포함된 최소 실력 값 및 최대 실력 값을 이용하여 상기 복수의 단원에 대한 복수의 제2 평균 실력 값을 산출하는 단계; 상기 제2 문제에 할당된 난이도 값 및 상기 복수의 제2 평균 실력 값을 이용하여 복수의 확률 값을 산출하는 단계; 및 상기 복수의 확률 값 중 가장 작은 값을 갖는 확률 값을 상기 제2 문제를 맞힐 상기 확률 값으로 결정하는 단계;를 포함할 수 있고, 상기 복수의 확률 값 각각은, 수학식 에 의해 산출되고, 상기 는 상기 제2 문제의 난이도 오차를 최소화하도록 보정하는 기 설정된 제1 파라미터 값이고, 상기 는 상기 제2 문제를 상기 사용자가 찍어서 맞힐 확률을 보정하도록 문제 타입에 따라 값이 변화하는 제2 파라미터 값이고, 상기 는 상기 제2 문제에 할당된 난이도 값이고, 상기 은 상기 복수의 제1 단원 중 하나의 단원에 대한 평균 실력 값으로 상기 복수의 제2 실력 값 중 하나이고, 상기 는 상기 를 상기 수학식에 대입하여 산출된 확률 값이고, 상기 는 기 설정된 상수 값일 수 있다. According to some embodiments of the present disclosure, the second method: uses the minimum skill value and maximum skill value included in the skill range before the update of the plurality of first units related to the second problem to the plurality of units. calculating a plurality of second average skill values; calculating a plurality of probability values using the difficulty value assigned to the second problem and the plurality of second average skill values; and determining a probability value having the smallest value among the plurality of probability values as the probability value of correcting the second problem. Each of the plurality of probability values may be expressed by Equation Calculated by, and is a preset first parameter value corrected to minimize the difficulty error of the second problem, is a second parameter value whose value changes depending on the problem type to correct the probability of the user guessing the second problem correctly, and is the difficulty value assigned to the second problem, and is the average skill value for one of the plurality of first units and is one of the plurality of second skill values, above is a probability value calculated by substituting into the above equation, and may be a preset constant value.

본 개시의 몇몇 실시예에 의하면, 상기 문제 타입은, 객관식 문제를 나타내는 제1 타입 및 주관식 문제를 나타내는 제2 타입을 포함하고, 상기 제2 파라미터 값은, 상기 문제가 상기 제1 타입인 경우, 0보다 큰 값을 갖고, 상기 문제가 상기 제2 타입인 경우, 0일 수 있다. According to some embodiments of the present disclosure, the problem type includes a first type representing a multiple-choice question and a second type representing a subjective question, and the second parameter value is, when the question is of the first type, It has a value greater than 0, and may be 0 if the problem is the second type.

본 개시의 몇몇 실시예에 의한 컴퓨터 판독가능 저장 매체 저장된 컴퓨터 프로그램은 장치의 프로세서에서 실행되는 경우, 사용자의 문제 풀이 실력을 진단하는 단계들을 수행하며, 상기 단계들은: 복수의 문제 중 제1 문제를 상기 사용자에게 제공하는 단계; 상기 제1 문제에 대한 풀이 데이터를 상기 사용자의 사용자 단말기로부터 수신하는 단계; 상기 풀이 데이터의 정답 여부에 기초하여 상기 제1 문제와 관련된 단원의 실력 범위를 구성하는 최소 실력 값 및 최대 실력 값 중 하나를 선택하는 단계; 상기 제1 문제의 난이도 값이 상기 최소 실력 값 및 상기 최대 실력 값 중 선택된 값보다 큰지 여부에 기초하여 상기 선택된 값을 상기 제1 문제의 난이도 값으로 변경할지 여부를 결정하는 단계; 및 상기 선택된 값이 상기 제1 문제의 난이도 값으로 변경된 경우, 상기 단원과 의존 관계가 있는 의존 단원의 실력 범위를 상기 단원의 변경된 실력 범위와 동일하게 변경하는 단계;를 포함할 수 있다. A computer program stored in a computer-readable storage medium according to some embodiments of the present disclosure, when executed on a processor of a device, performs steps for diagnosing a user's problem-solving skills, the steps comprising: solving a first problem among a plurality of problems; providing to the user; Receiving solution data for the first problem from the user's user terminal; selecting one of a minimum skill value and a maximum skill value constituting a skill range of a unit related to the first problem based on whether the solution data is correct; determining whether to change the selected value to the difficulty value of the first problem based on whether the difficulty value of the first problem is greater than a selected value among the minimum skill value and the maximum skill value; and when the selected value is changed to the difficulty value of the first problem, changing the skill range of the dependent unit that has a dependency relationship with the unit to be the same as the changed skill range of the unit.

본 개시의 몇몇 실시예에 의한 사용자의 문제 풀이 실력을 진단하기 위한 문제를 제공하는 장치는: 적어도 하나의 프로그램 명령이 저장된 저장부; 상기 적어도 하나의 프로그램 명령을 수행하는 프로세서; 및 통신부; 를 포함하고, 상기 프로세서는, 복수의 문제 중 제1 문제를 상기 사용자에게 제공하고, 상기 제1 문제에 대한 풀이 데이터를 상기 통신부를 통해 상기 사용자의 사용자 단말기로부터 수신하고, 상기 풀이 데이터의 정답 여부에 기초하여 상기 제1 문제와 관련된 단원의 실력 범위를 구성하는 최소 실력 값 및 최대 실력 값 중 하나를 선택하고, 상기 제1 문제의 난이도 값이 상기 최소 실력 값 및 상기 최대 실력 값 중 선택된 값보다 큰지 여부에 기초하여 상기 선택된 값을 상기 제1 문제의 난이도 값으로 변경할지 여부를 결정할 수 있다. An apparatus for providing problems for diagnosing a user's problem-solving skills according to some embodiments of the present disclosure includes: a storage unit storing at least one program command; a processor executing the at least one program instruction; and Ministry of Communications; It includes, wherein the processor provides a first problem among a plurality of problems to the user, receives solution data for the first problem from the user terminal of the user through the communication unit, and determines whether the solution data is correct. Based on this, one of the minimum skill value and the maximum skill value constituting the skill range of the unit related to the first problem is selected, and the difficulty value of the first problem is greater than the selected value among the minimum skill value and the maximum skill value. It may be determined whether to change the selected value to the difficulty value of the first problem based on whether or not it is large.

본 개시에서 얻을 수 있는 기술적 해결 수단은 이상에서 언급한 해결 수단들로 제한되지 않으며, 언급하지 않은 또 다른 해결 수단들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The technical solutions obtainable from this disclosure are not limited to the solutions mentioned above, and other solutions not mentioned above will be clearly apparent to those skilled in the art from the description below. It will be understandable.

본 개시에 따른 사용자의 문제 풀이 실력을 진단하는 방법의 효과에 대해 설명하면 다음과 같다.The effect of the method for diagnosing a user's problem-solving skills according to the present disclosure will be described as follows.

본 개시의 몇몇 실시예에 의하면, 사용자의 문제 풀이 실력을 빠르고 정확하게 진단할 수 있다. According to some embodiments of the present disclosure, a user's problem-solving skills can be quickly and accurately diagnosed.

본 개시를 통해 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects that can be obtained through the present disclosure are not limited to the effects mentioned above, and other effects not mentioned can be clearly understood by those skilled in the art from the description below. will be.

본 개시의 다양한 실시예들이 도면들을 참조로 설명되며, 여기서 유사한 참조 번호들은 총괄적으로 유사한 구성요소들을 지칭하는데 이용된다. 이하의 실시예에서, 설명 목적을 위해, 다수의 특정 세부사항들이 하나 이상의 실시예들의 총체적 이해를 제공하기 위해 제시된다. 그러나, 그러한 실시예(들)가 이러한 구체적인 세부사항들 없이 실시될 수 있음은 명백할 것이다.
도 1은 본 개시의 몇몇 실시예에 따른 사용자의 문제 풀이 실력을 진단하는 장치를 설명하기 위한 블록도이다.
도 2는 본 개시의 몇몇 실시예에 따라 사용자에게 제공된 문제와 관련된 단원 및 해당 단원과 의존 관계가 있는 의존 단원의 실력 범위를 업데이트하는 방법의 일례를 설명하기 위한 흐름도이다.
도 3은 본 개시의 몇몇 실시예에 따라 사용자의 문제 풀이 실력을 진단하기 위한 문제를 제공하는 방법의 일례를 설명하기 위한 흐름도이다.
도 4는 본 개시의 몇몇 실시예에 따라 사용자에게 제공된 문제와 관련된 단원의 실력 범위를 업데이트하는 방법의 일례를 설명하기 위한 도면이다.
도 5는 본 개시의 몇몇 실시예에 따라 문제와 관련된 단원과 의존 관계가 있는 의존 단원의 일례를 설명하기 위한 도면이다.
도 6은 본 개시의 몇몇 실시예에 따라 사용자에게 제공된 문제와 관련된 단원 및 해당 단원과 의존 관계가 있는 단원의 실력 범위를 업데이트하는 방법의 일례를 설명하기 위한 흐름도이다.
도 7은 본 개시의 몇몇 실시예에 따라 하나 이상의 단원과 관련된 문제를 맞힐 확률 값을 산출하는 방법의 일례를 설명하기 위한 흐름도이다.
도 8은 본 개시의 몇몇 실시예에 따라 문제를 맞힐 확률 값을 산출할 때 사용되는 수학식의 일례를 설명하기 위한 도면이다.
도 9는 본 개시의 몇몇 실시예에 따라 문제가 기 설정된 기관에서 출제한 문제인 경우 난이도 값을 산출하는 수학식의 일례를 설명하기 위한 도면이다.
Various embodiments of the present disclosure are described with reference to the drawings, where like reference numerals are used to collectively refer to like elements. In the following examples, for purposes of explanation, numerous specific details are set forth to provide a thorough understanding of one or more embodiments. However, it will be clear that such embodiment(s) may be practiced without these specific details.
1 is a block diagram illustrating an apparatus for diagnosing a user's problem-solving skills according to some embodiments of the present disclosure.
FIG. 2 is a flowchart illustrating an example of a method for updating the skill range of a unit related to a problem provided to a user and a dependent unit that has a dependency relationship with the unit, according to some embodiments of the present disclosure.
FIG. 3 is a flowchart illustrating an example of a method of providing a problem for diagnosing a user's problem-solving skills according to some embodiments of the present disclosure.
FIG. 4 is a diagram illustrating an example of a method for updating the skill range of a unit related to a problem provided to a user according to some embodiments of the present disclosure.
FIG. 5 is a diagram illustrating an example of a dependent unit that has a dependency relationship with a unit related to a problem according to some embodiments of the present disclosure.
FIG. 6 is a flowchart illustrating an example of a method for updating the skill range of a unit related to a problem provided to a user and a unit that has a dependency relationship with the unit, according to some embodiments of the present disclosure.
FIG. 7 is a flowchart illustrating an example of a method for calculating a probability value of correcting a problem related to one or more units according to some embodiments of the present disclosure.
FIG. 8 is a diagram illustrating an example of a mathematical equation used when calculating a probability value of correcting a problem according to some embodiments of the present disclosure.
FIG. 9 is a diagram illustrating an example of a mathematical equation for calculating a difficulty value when the problem is a question asked by a preset institution according to some embodiments of the present disclosure.

이하에서는 도면을 참조하여 본 개시에 따른 장치 및 장치의 제어 방법의 다양한 실시예(들)를 상세하게 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. Hereinafter, various embodiment(s) of the device and the control method of the device according to the present disclosure will be described in detail with reference to the drawings. However, regardless of the reference numerals, identical or similar components are assigned the same reference numbers and overlapping The explanation will be omitted.

본 개시의 목적 및 효과, 그리고 그것들을 달성하기 위한 기술적 구성들은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 본 개시의 하나 이상의 실시예들을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 개시의 적어도 하나의 실시예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. The purpose and effects of the present disclosure, and technical configurations for achieving them, will become clear by referring to the embodiments described in detail below along with the accompanying drawings. In describing one or more embodiments of the present disclosure, if it is determined that a detailed description of related known technology may obscure the gist of at least one embodiment of the present disclosure, the detailed description will be omitted.

본 개시의 용어들은 본 개시에서의 기능을 고려하여 정의된 용어들로써 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 또한, 첨부된 도면은 본 개시의 하나 이상의 실시예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 개시의 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.The terms in this disclosure are terms defined in consideration of the functions in this disclosure, and may vary depending on the intention or custom of the user or operator. In addition, the attached drawings are only intended to facilitate understanding of one or more embodiments of the present disclosure, and the technical idea of the present disclosure is not limited by the attached drawings, and all changes included in the spirit and technical scope of the present disclosure are not limited. , should be understood to include equivalents or substitutes.

이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 본 개시의 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. The suffixes “module” and “part” for components used in the following description are given or used interchangeably only considering the ease of preparation of the present disclosure, and do not have distinct meanings or roles in themselves.

제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 따라서, 이하에서 언급되는 제1 구성요소는 본 개시의 기술적 사상 내에서 제2 구성 요소가 될 수도 있다. Terms containing ordinal numbers, such as first, second, etc., may be used to describe various components, but the components are not limited by the terms. The above terms are used only for the purpose of distinguishing one component from another. Accordingly, the first component mentioned below may also be the second component within the technical spirit of the present disclosure.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 즉, 달리 특정되지 않거나 단수 형태를 지시하는 것으로 문맥상 명확하지 않은 경우, 본 개시와 청구범위에서 단수는 일반적으로 "하나 또는 그 이상"을 의미하는 것으로 해석되어야 한다. Singular expressions include plural expressions unless the context clearly dictates otherwise. That is, unless otherwise specified or clear from context to indicate a singular form, the singular in this disclosure and claims should generally be construed to mean “one or more.”

본 개시에서, "포함하는", "포함한다" 또는 "가지다" 등의 용어는 본 개시상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In the present disclosure, terms such as “comprising,” “includes,” or “have” are intended to indicate the presence of features, numbers, steps, operations, components, parts, or combinations thereof described in the present disclosure. It should be understood that this does not exclude in advance the presence or addition of one or more other features, numbers, steps, operations, components, parts, or combinations thereof.

본 개시에서 "또는"이라는 용어는 배타적 의미의 "또는"이 아니라 내포적 의미의 "또는"으로 이해되어야 한다. 즉, 달리 특정되지 않거나 문맥상 명확하지 않은 경우에, "X는 A 또는 B를 이용한다"는 자연적인 내포적 치환 중 하나를 의미하는 것으로 의도된다. 즉, X가 A를 이용하거나; X가 B를 이용하거나; 또는 X가 A 및 B 모두를 이용하는 경우, "X는 A 또는 B를 이용한다"가 이들 경우들 어느 것으로도 적용될 수 있다. 또한, 본 개시에 사용된 "및/또는"이라는 용어는 열거된 관련 아이템들 중 하나 이상의 아이템의 가능한 모든 조합을 지칭하고 포함하는 것으로 이해되어야 한다. In the present disclosure, the term “or” should be understood not as “or” in the exclusive sense but as “or” in the connotative sense. That is, unless otherwise specified or clear from context, “X utilizes A or B” is intended to mean one of the natural implicit substitutions. That is, either X uses A; X uses B; Or, if X uses both A and B, “X uses A or B” can apply to either of these cases. Additionally, the term “and/or” as used in this disclosure should be understood to refer to and include all possible combinations of one or more of the related listed items.

본 개시에서 사용되는 용어 "정보" 및 "데이터"는 서로 상호 교환 가능하도록 사용될 수 있다. As used in this disclosure, the terms “information” and “data” may be used interchangeably.

다른 정의가 없다면, 본 개시에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 개시의 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 특별히 정의되어 있지 않는 한 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used in this disclosure may be used with meanings that can be commonly understood by those skilled in the art. Additionally, terms defined in commonly used dictionaries are not overly interpreted unless specifically defined.

그러나 본 개시는 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있다. 단지 본 개시의 몇몇 실시예들은 본 개시의 기술분야에서 통상의 지식을 가진 자에게 본 개시의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 개시는 청구항의 범주에 의해 정의될 뿐이다. 그러므로 그 정의는 본 개시 전반에 걸친 내용을 토대로 내려져야 할 것이다.However, the present disclosure is not limited to the embodiments disclosed below and may be implemented in various different forms. Only some embodiments of the present disclosure are provided to fully inform those skilled in the art of the present disclosure of the scope of the present disclosure, and the present disclosure is only defined by the scope of the claims. Therefore, the definition should be made based on the content throughout this disclosure.

일반적으로 사용자의 실력을 진단하기 위한 문제는 하나의 단원과 관련된 문제일 수도 있고, 복수 개의 단원과 관련된 문제일 수도 있다. In general, problems for diagnosing a user's skills may be problems related to one unit or problems related to multiple units.

본 개시의 몇몇 실시예에 따르면, 장치의 프로세서는 복수의 문제 중 제1 문제를 사용자에게 제공하고, 제1 문제에 대한 풀이 데이터를 사용자의 사용자 단말기로부터 수신할 수 있다. 프로세서는 풀이 데이터의 정답 여부에 기초하여 제1 문제와 관련된 단원의 실력 범위를 구성하는 최소 실력 값 및 최대 실력 값 중 하나를 선택할 수 있다. 프로세서는 제1 문제의 난이도 값이 최소 실력 값 및 최대 실력 값 중 선택된 값보다 큰지 여부에 기초하여 선택된 값을 난이도 값으로 변경할지 여부를 결정할 수 있다. 그리고, 프로세서는, 선택된 값이 난이도 값으로 변경된 경우 문제와 관련된 단원과 의존 관계가 있는 의존 단원의 실력 범위를 문제와 관련된 단원의 변경된 실력 범위와 동일하게 변경할 수 있다. According to some embodiments of the present disclosure, the processor of the device may provide a first problem among a plurality of problems to the user and receive solution data for the first problem from the user's user terminal. The processor may select one of the minimum and maximum skill values constituting the skill range of the unit related to the first problem based on whether the solution data is correct. The processor may determine whether to change the selected value to the difficulty value based on whether the difficulty value of the first problem is greater than the selected value among the minimum skill value and the maximum skill value. Additionally, when the selected value is changed to a difficulty value, the processor may change the skill range of the dependent unit that has a dependency relationship with the unit related to the problem to be the same as the changed skill range of the unit related to the problem.

이하에서는 도 1 내지 도 9를 참조하여 사용자의 문제 풀이 실력을 진단하는 방법에 대해 설명한다. Hereinafter, a method for diagnosing a user's problem-solving skills will be described with reference to FIGS. 1 to 9.

도 1은 본 개시의 몇몇 실시예에 따른 사용자의 문제 풀이 실력을 진단하는 장치를 설명하기 위한 블록도이다. 1 is a block diagram illustrating an apparatus for diagnosing a user's problem-solving skills according to some embodiments of the present disclosure.

도 1을 참조하면, 사용자의 문제 풀이 실력을 진단하는 장치(100)는 프로세서(110), 저장부(120) 및 통신부(130)를 포함할 수 있다. 도 1에 도시된 구성요소들은 장치(100)를 구현하는데 있어서 필수적인 것은 아니어서, 본 개시에서 설명되는 장치(100)는 위에서 열거된 구성요소들 보다 많거나, 또는 적은 구성요소들을 가질 수 있다. Referring to FIG. 1 , the device 100 for diagnosing a user's problem-solving skills may include a processor 110, a storage unit 120, and a communication unit 130. The components shown in FIG. 1 are not essential for implementing the device 100, so the device 100 described in this disclosure may have more or less components than those listed above.

본 개시의 장치(100)의 각 구성요소는 실제 구현되는 장치(100)의 사양에 따라 통합, 추가, 또는 생략될 수 있다. 즉, 필요에 따라, 2 이상의 구성요소가 하나의 구성요소로 합쳐지거나 하나의 구성요소가 2 이상의 구성요소로 세분화될 수 있다. 또한, 각 블록에서 수행하는 기능은 본 개시의 실시예를 설명하기 위한 것이며, 그 구체적인 동작이나 장치는 본 발명의 권리범위를 제한하지 아니한다.Each component of the device 100 of the present disclosure may be integrated, added, or omitted depending on the specifications of the device 100 that is actually implemented. That is, as needed, two or more components may be combined into one component or one component may be subdivided into two or more components. Additionally, the functions performed by each block are for explaining the embodiments of the present disclosure, and the specific operations or devices do not limit the scope of the present invention.

본 개시에서 설명되는 장치(100)는 데이터(data), 콘텐츠(content), 서비스(service) 및 애플리케이션(application) 등을 송신 및 수신 중 적어도 하나 이상을 수행하는 모든 디바이스를 포함할 수 있다. The device 100 described in this disclosure may include all devices that perform at least one of transmitting and receiving data, content, services, and applications.

본 개시의 장치(100)는 유/무선 네트워크(wire/wireless network)를 통하여 다른 장치, 외부 서버(external server) 등과 페어링 또는 연결(pairing or connecting) 가능하며, 이를 통해 소정 데이터를 송/수신할 수 있다. 이 경우, 장치(100)를 통해 송/수신되는 데이터는 송/수신 전에 변환(converting)될 수 있다. The device 100 of the present disclosure is capable of pairing or connecting to other devices, external servers, etc. through a wired/wireless network, and can transmit/receive predetermined data through this. You can. In this case, data transmitted/received through the device 100 may be converted before transmission/reception.

본 개시의 장치(100)에는 예를 들어, 서버(server), PC(Personal Computer), 마이크로프로세서, 메인프레임 컴퓨터, 디지털 프로세서, 디바이스 제어기 등과 같은 고정형 디바이스(standing device) 스마트 폰(Smart Phone), 태블릿 PC(Tablet PC), 노트북(Notebook) 등과 같은 모바일 디바이스(mobile device or handheld device)가 모두 포함될 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. The device 100 of the present disclosure includes, for example, a standing device such as a server, a personal computer (PC), a microprocessor, a mainframe computer, a digital processor, a device controller, a smart phone, All mobile devices (mobile devices or handheld devices) such as tablet PCs, laptops, etc. may be included. However, the present disclosure is not limited to this.

본 개시에서, "서버"라 함은, 다양한 종류의 사용자 단말기 즉, 클라이언트(client)로 데이터를 공급 또는 그로부터 데이터를 수신하는 장치 혹은 시스템을 의미한다. 서버로 예컨대, 웹 페이지(web page), 웹 컨텐트 또는 웹 서비스(web content or web service)를 제공하는 웹 서버(Web server)나 포털 서버(portal server), 광고 데이터(advertising data)를 제공하는 광고 서버(advertising server), 컨텐트를 제공하는 컨텐트 서버(content server), SNS(Social Network Service)를 제공하는 SNS 서버, 제조업체(manufacturer)에서 제공하는 서비스 서버(service server), VoD(Video on Demand)나 스트리밍(streaminng) 서비스 제공을 위한 MVPD(Multichannel Video Programming Distributor), 유료 서비스(pay service) 등을 제공하는 서비스 서버 등이 포함될 수 있다.In this disclosure, “server” refers to a device or system that supplies data to or receives data from various types of user terminals, that is, clients. A server, for example, a web server or portal server that provides web pages, web content or web services, or an advertisement that provides advertising data. Advertising server, content server providing content, SNS server providing SNS (Social Network Service), service server provided by the manufacturer, VoD (Video on Demand) or It may include an MVPD (Multichannel Video Programming Distributor) for providing streaming services, a service server for providing paid services, etc.

본 개시에서 장치(100)로 명명하는 경우, 그 의미는 문맥에 따라 서버를 의미하나, 고정형 디바이스 또는 모바일 디바이스를 의미할 수도 있고 특별히 언급하지 않는다면 모두 포함하는 의미로 사용될 수도 있다. In the present disclosure, when the name device 100 is used, it refers to a server depending on the context, but may also refer to a fixed device or a mobile device, or may be used to include all of them unless specifically mentioned.

프로세서(110)는 응용 프로그램과 관련된 동작 외에도 통상적으로 장치(100)의 전반적인 동작을 제어할 수 있다. 프로세서(110)는 장치(100)의 구성요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 저장부(120)에 저장된 응용 프로그램을 구동함으로써, 적절한 정보 또는 기능을 제공 또는 처리할 수 있다. The processor 110 may generally control the overall operation of the device 100 in addition to operations related to application programs. The processor 110 can provide or process appropriate information or functions by processing signals, data, information, etc. input or output through the components of the device 100 or by running an application program stored in the storage unit 120. there is.

프로세서(110)는 저장부(120)에 저장된 응용 프로그램을 구동하기 위하여 장치(100)의 구성요소들 중 적어도 일부를 제어할 수 있다. 나아가, 프로세서(110)는 응용 프로그램의 구동을 위하여 장치(100)에 포함된 구성요소들 중 적어도 둘 이상을 서로 조합하여 동작시킬 수 있다.The processor 110 may control at least some of the components of the device 100 to run an application program stored in the storage unit 120. Furthermore, the processor 110 may operate in combination with at least two or more of the components included in the device 100 to run an application program.

프로세서(110)는 하나 이상의 코어로 구성될 수 있으며, 다양한 상용 프로세서들 중 임의의 프로세서일 수 있다. 예를 들어, 프로세서(110)는 장치의 중앙 처리 장치(CPU: Central Processing Unit), 범용 그래픽 처리 장치 (GPUGP: General Purpose Graphics Processing Unit), 텐서 처리 장치(TPU: Tensor Processing Unit) 등을 포함할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. The processor 110 may consist of one or more cores and may be any of a variety of commercial processors. For example, the processor 110 may include a central processing unit (CPU), a general purpose graphics processing unit (GPUGP), a tensor processing unit (TPU), etc. You can. However, the present disclosure is not limited to this.

본 개시의 프로세서(110)는 듀얼 프로세서 또는 기타 멀티프로세서 아키텍처로 구성될 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. The processor 110 of the present disclosure may be configured with a dual processor or other multiprocessor architecture. However, the present disclosure is not limited to this.

프로세서(110)는 저장부(120)에 저장된 컴퓨터 프로그램을 판독하여 사용자의 문제 풀이 실력을 진단할 수 있다. The processor 110 can read the computer program stored in the storage unit 120 to diagnose the user's problem-solving skills.

본 개시에서 프로세서(110)는 저장부(120)에 저장된 복수의 문제 중 제1 문제를 사용자에게 제공할 수 있다. In the present disclosure, the processor 110 may provide the first problem among a plurality of problems stored in the storage unit 120 to the user.

구체적으로, 프로세서(110)는 복수의 문제 각각을 사용자에게 제공했을 때 예상되는 복수의 문제와 관련된 복수의 기대 값을 산출할 수 있다. 그리고, 프로세서(110)는 복수의 기대 값 중 가장 작은 기대 값을 갖는 문제를 제1 문제로 사용자에게 제공할 수 있다. 여기서, 가장 작은 기대 값을 갖는 문제가 복수 개인 경우, 프로세서(110)는 복수 개의 문제 중 랜덤하게 하나의 문제를 제1 문제로 선택하여 사용자에게 제공할 수 있다. 이에 대한 자세한 설명은 도 3을 참조하여 후술한다. Specifically, the processor 110 may calculate a plurality of expected values related to the plurality of problems expected when each of the plurality of problems is provided to the user. Additionally, the processor 110 may provide the user with the problem with the smallest expected value among the plurality of expected values as the first problem. Here, when there are a plurality of problems with the smallest expected value, the processor 110 may randomly select one problem from among the plurality of problems as the first problem and provide it to the user. A detailed description of this will be provided later with reference to FIG. 3 .

본 개시의 몇몇 실시예에 따르면, 사용자가 문제 풀이 실력을 최초로 진단하는 경우, 프로세서(110)는 복수의 단원 각각이 기 설정된 최소 실력 값보다 크거나 같고 기 설정된 최대 실력 값보다 작거나 같은 초기 실력 범위를 갖도록 복수의 단원 각각의 실력 범위를 초기화할 수 있다. According to some embodiments of the present disclosure, when a user first diagnoses a problem-solving skill, the processor 110 determines that each of the plurality of units has an initial skill level that is greater than or equal to a preset minimum skill value and is less than or equal to a preset maximum skill value. You can reset the skill range of each of multiple units to have a range.

본 개시에서 복수의 기대 값 각각은, 수학식 에 의해 산출되고, 는 복수의 문제 중 하나인 제2 문제와 관련된 기대 값이고, c는 제2 문제를 상기 사용자가 맞힐 확률 값이고, 는 사용자가 제2 문제를 맞힐 경우 제2 문제와 관련된 제1 단원과 관련된 예상되는 제1 실력 범위 및 제1 단원과 의존 관계가 있는 제1 의존 단원과 관련된 예상되는 제2 실력 범위를 이용하여 산출된 제1 평균 실력 길이 값이고, 는 사용자가 제2 문제를 틀릴 경우 제1 단원과 관련된 예상되는 제3 실력 범위 및 제1 의존 단원과 관련된 예상되는 제4 실력 범위를 이용하여 산출된 제2 평균 실력 길이 값일 수 있다. In the present disclosure, each of the plurality of expected values is expressed by the equation Calculated by, is the expected value related to the second problem, which is one of a plurality of problems, and c is the probability value of the user correcting the second problem, is calculated using the expected first skill range related to the first unit related to the second problem when the user answers the second problem correctly and the expected second skill range related to the first dependent unit that is dependent on the first unit. is the first average skill length value, may be a second average skill length value calculated using the expected third skill range related to the first unit and the expected fourth skill range related to the first dependent unit when the user answers the second problem incorrectly.

본 개시에서 업데이트되기 전의 상기 제1 단원의 제5 실력 범위는, 제1 최소 실력 값보다 크거나 같고 제1 최대 실력 값보다 작거나 같은 범위를 가질 수 있다. The fifth skill range of the first unit before being updated in this disclosure may have a range that is greater than or equal to the first minimum skill value and less than or equal to the first maximum skill value.

본 개시에서 제1 실력 범위는, 제2 최소 실력 값보다 크거나 같고 제1 최대 실력 값보다 작거나 같은 범위를 갖되, 제2 최소 실력 값은 제1 최소 실력 값이 제1 문제에 할당된 난이도 값보다 큰 경우 제1 최소 실력 값과 동일한 값을 갖고, 제1 최소 실력 값이 상기 난이도 값보다 작은 경우 난이도 값과 동일한 값을 가질 수 있다. In the present disclosure, the first skill range has a range that is greater than or equal to the second minimum skill value and is less than or equal to the first maximum skill value, and the second minimum skill value is the difficulty level at which the first minimum skill value is assigned to the first problem. If it is greater than the difficulty value, it may have the same value as the first minimum skill value, and if the first minimum skill value is less than the difficulty value, it may have the same value as the difficulty value.

본 개시에서 제2 실력 범위는 제1 실력 범위와 동일한 범위를 가질 수 있다. 즉, 제2 실력 범위는 제2 최소 실력 값보다 크거나 같고 제1 최대 실력 값보다 작거나 같은 범위를 가질 수 있다. 제1 단원의 의존 단원은 제1 단원과 동일한 실력 범위를 가져야하기 때문이다. In the present disclosure, the second skill range may have the same range as the first skill range. That is, the second skill range may be greater than or equal to the second minimum skill value and less than or equal to the first maximum skill value. This is because dependent units of the first unit must have the same skill range as the first unit.

본 개시에서 제3 실력 범위는, 제1 최소 실력 값보다 크거나 같고 제2 최대 실력 값보다 작거나 같은 범위를 갖되, 제2 최대 실력 값은 제1 최대 실력 값이 제1 문제에 할당된 난이도 값보다 작은 경우 제1 최대 실력 값과 동일한 값을 갖고, 제1 최대 실력 값이 난이도 값보다 큰 경우 난이도 값과 동일한 값을 가질 수 있다. In the present disclosure, the third skill range has a range that is greater than or equal to the first minimum skill value and is less than or equal to the second maximum skill value, and the second maximum skill value is the level of difficulty assigned to the first problem by the first maximum skill value. If it is smaller than the value, it may have the same value as the first maximum skill value, and if the first maximum skill value is greater than the difficulty value, it may have the same value as the difficulty value.

본 개시에서 제4 실력 범위는 제3 실력 범위와 동일한 범위를 가질 수 있다. 즉, 제4 실력 범위는 제1 최소 실력 값보다 크거나 같고 제2 최대 실력 값보다 작거나 같은 범위를 가질 수 있다. 제1 단원의 의존 단원은 제1 단원과 동일한 실력 범위를 가져야하기 때문이다. In the present disclosure, the fourth skill range may have the same range as the third skill range. That is, the fourth skill range may be greater than or equal to the first minimum skill value and less than or equal to the second maximum skill value. This is because dependent units of the first unit must have the same skill range as the first unit.

본 개시에서 제1 평균 실력 길이 값은, 제1 실력 범위 및 제2 실력 범위 각각을 이용하여 산출된 복수의 제1 실력 길이 값 및 복수의 단원 중 상기 제1 단원 및 제1 의존 단원을 제외한 적어도 하나의 나머지 단원에 대한 적어도 하나의 실력 범위를 이용하여 산출된 적어도 하나의 실력 길이 값의 평균을 구해서 산출된 값일 수 있다. 그리고, 제2 평균 실력 길이 값은, 제3 실력 범위 및 제4 실력 범위를 이용하여 산출된 복수의 제2 실력 길이 값 및 복수의 단원 중 상기 제1 단원 및 제1 의존 단원을 제외한 적어도 하나의 나머지 단원에 대한 적어도 하나의 실력 길이 값의 평균을 구해서 산출된 값일 수 있다. 여기서, 복수의 제1 실력 길이 값 각각은, 제1 최대 실력 값에서 제2 최소 실력 값을 뺀 값이고, 복수의 제2 실력 길이 값 각각은, 제2 최대 실력 값에서 제1 최소 실력 값을 뺀 값일 수 있다. In the present disclosure, the first average skill length value includes a plurality of first skill length values calculated using each of the first skill range and the second skill range and at least the first unit and the first dependent unit among the plurality of units. It may be a value calculated by calculating the average of at least one skill length value calculated using at least one skill range for one remaining unit. And, the second average skill length value is a plurality of second skill length values calculated using the third skill range and the fourth skill range and at least one of the plurality of units excluding the first unit and the first dependent unit. It may be a value calculated by calculating the average of at least one skill length value for the remaining units. Here, each of the plurality of first skill length values is a value obtained by subtracting the second minimum skill value from the first maximum skill value, and each of the plurality of second skill length values is obtained by subtracting the second minimum skill value from the second maximum skill value. It may be a subtracted value.

본 개시에서 프로세서(110)는 사용자에게 제공된 제1 문제에 대한 풀이 데이터를 사용자의 사용자 단말기로부터 통신부(130)를 통해 수신할 수 있다. 프로세서(110)는 풀이 데이터의 정답 여부에 기초하여 사용자에게 제공하는 제1 문제와 관련된 단원의 실력 범위를 구성하는 최소 실력 값 및 최대 실력 값 중 하나를 선택할 수 있다. 프로세서(110)는 제1 문제의 난이도 값이 최소 실력 값 및 최대 실력 값 중 선택된 값보다 큰지 여부에 기초하여 선택된 값을 난이도 값으로 변경할지 여부를 결정할 수 있다. 그리고, 프로세서(110)는 선택된 값이 난이도 값으로 변경된 경우, 제1 문제와 관련된 단원과 의존 관계가 있는 의존 단원의 실력 범위를 제1 문제와 관련된 단원의 실력 범위와 동일하게 변경할 수 있다. In the present disclosure, the processor 110 may receive solution data for the first problem provided to the user from the user's user terminal through the communication unit 130. The processor 110 may select one of the minimum skill value and the maximum skill value constituting the skill range of the unit related to the first problem provided to the user based on whether the solution data is correct. The processor 110 may determine whether to change the selected value to a difficulty value based on whether the difficulty value of the first problem is greater than the selected value among the minimum skill value and the maximum skill value. Additionally, when the selected value is changed to a difficulty value, the processor 110 may change the skill range of the dependent unit that is dependent on the unit related to the first problem to be the same as the skill range of the unit related to the first problem.

본 개시에서 제1 문제와 관련된 단원과 의존 관계가 있는 의존 단원은 사용자가 제1 문제를 맞혔는지 여부에 따라 제1 문제와 관련된 단원 보다 먼저 배우는 선수 단원 또는 제1 문제와 관련된 단원 보다 뒤에 배우는 후행 단원으로 정의될 수 있다. In the present disclosure, the dependent unit that has a dependency relationship with the unit related to the first problem is a player unit that is learned before the unit related to the first problem or a follower unit that is learned after the unit related to the first problem, depending on whether the user answered the first problem correctly. It can be defined as a unit.

일례로, 제1 문제를 사용자가 맞힌 경우 의존 단원은 문제와 관련된 단원 보다 먼저 배우는 선수 단원으로 정의될 수 있다. 여기서, 선수 단원은, 학습 과정에서 제1 문제와 관련된 단원 보다 먼저 배우는 단원이며, 사용자는 의존 단원의 내용을 사용자가 이해하고 있어야 제1 문제와 관련된 단원을 맞힐 수 있다. For example, when the user answers the first problem correctly, the dependent unit may be defined as a prerequisite unit learned before the unit related to the problem. Here, the prerequisite unit is a unit learned before the unit related to the first problem in the learning process, and the user must understand the contents of the dependent unit to correctly answer the unit related to the first problem.

다른 일례로, 제1 문제를 사용자가 틀린 경우 의존 단원은 문제와 관련된 단원보다 뒤에 배우는 후행 단원으로 정의될 수 있다. 여기서, 후행 단원은, 학습 과정에서 제1 문제와 관련된 단원 보다 뒤에 배우는 단원이며, 사용자는 제1 문제와 관련된 단원의 내용을 사용자가 이해하고 있어야 후행 단원과 관련된 문제를 맞힐 수 있다. As another example, if the user answers the first problem incorrectly, the dependent unit may be defined as a subsequent unit learned after the unit related to the problem. Here, the subsequent unit is a unit learned later than the unit related to the first problem in the learning process, and the user must understand the contents of the unit related to the first problem to answer the problem related to the subsequent unit.

본 개시의 몇몇 실시예에 따르면, 제1 문제와 관련된 단원에 대한 실력 범위가 변경된 경우, 프로세서(110)는 제1 문제와 관련된 단원과 의존 관계가 있는 의존 단원이 어떤 단원인지 정의할 수 있다. 그리고, 프로세서(110)는 의존 단원이 선수 단원으로 정의된 경우 선수 단원의 실력 범위를 제1 문제와 관련된 단원의 실력 범위와 동일하게 변경할 수 있고, 의존 단원이 후행 단원으로 정의된 경우 후행 단원의 실력 범위를 제1 문제와 관련된 단원의 실력 범위와 동일하게 변경할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. According to some embodiments of the present disclosure, when the skill range for a unit related to the first problem is changed, the processor 110 may define which unit is a dependent unit that has a dependency relationship with the unit related to the first problem. Additionally, if the dependent unit is defined as a preceding unit, the processor 110 may change the skill range of the preceding unit to be the same as the skill range of the unit related to the first problem, and if the dependent unit is defined as a following unit, the skill range of the following unit may be changed. The skill range can be changed to be the same as the skill range of the unit related to the first problem. However, the present disclosure is not limited to this.

본 개시에서 문제는 초등학교, 중학교 및 고등학교 등의 교과목 중 하나와 관련된 문제일 수 있다. 예를 들어, 문제는 초등 수학 문제, 중등 수학 문제, 고등 수학 문제, 초등 국어 문제, 중등 국어 문제 등을 포함할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. In the present disclosure, the problem may be related to one of the subjects of elementary school, middle school, and high school. For example, problems may include elementary math problems, middle school math problems, high school math problems, elementary Korean language problems, middle school Korean language problems, etc. However, the present disclosure is not limited to this.

본 개시에서 단원은 하나의 주제나 내용을 중심으로 묶인 학습 단위를 의미할 수 있다. 예를 들어, 문제가 고등 수학 문제인 경우, 단원은 다항식의 덧셈, 뺄셈, 곱셈, 나눗셈을 배우는 제1 단원, 이차방정식의 풀이를 배우는 제2 단원 등으로 구성될 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. In the present disclosure, a unit may refer to a learning unit centered around one topic or content. For example, if the problem is an advanced math problem, the unit may consist of a first unit learning addition, subtraction, multiplication, and division of polynomials, a second unit learning how to solve quadratic equations, etc. However, the present disclosure is not limited to this.

본 개시에서 한 개의 단원과 관련된 문제는 복수의 단원 중 어느 하나의 단원의 내용을 알아야지 풀 수 있는 문제를 의미할 수 있다. 예를 들어 제1 단원의 내용을 알아야 풀 수 있는 문제는 한 개의 단원인 제1 단원과 관련된 문제일 수 있다. 다만, 이에 한정되는 것은 아니다. In the present disclosure, a problem related to one unit may mean a problem that can be solved only by knowing the contents of one unit among a plurality of units. For example, a problem that can be solved by knowing the contents of Unit 1 may be a problem related to Unit 1, which is one unit. However, it is not limited to this.

본 개시에서 복수의 단원과 관련된 문제는 전체 단원 중 문제와 관련된 복수의 단원 각각의 내용을 알아야지 풀 수 있는 문제를 의미할 수 있다. 예를 들어, 제1 단원의 내용과 함께 제2 단원의 내용을 알아야 풀 수 있는 문제는 복수의 단원과 관련된 문제일 수 있다. In the present disclosure, a problem related to a plurality of units may mean a problem that can be solved only by knowing the contents of each of the plurality of units related to the problem among all units. For example, a problem that can be solved by knowing the contents of the second unit as well as the contents of the first unit may be a problem related to multiple units.

저장부(120)는, 장치(100)의 다양한 기능을 지원하는 데이터를 저장할 수 있다. 저장부(120)는 장치(100)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 장치(100)의 동작을 위한 데이터들, 명령어들, 적어도 하나의 프로그램 명령을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부 서버로부터 다운될 수 있다. 또한, 이러한 응용 프로그램 중 적어도 일부는, 장치(100)의 기본적인 기능을 위하여 출고 당시부터 장치(100) 상에 존재할 수도 있다. 한편, 응용 프로그램은, 저장부(120)에 저장되고, 장치(100) 상에 설치되어 프로세서(110)에 의하여 장치(100)의 동작(또는 기능)을 수행하도록 구동될 수 있다. The storage unit 120 may store data supporting various functions of the device 100. The storage unit 120 may store a plurality of application programs (application programs or applications) running on the device 100, data for operation of the device 100, commands, and at least one program command. . At least some of these applications can be downloaded from an external server through wireless communication. Additionally, at least some of these application programs may exist on the device 100 from the time of shipment for the basic functions of the device 100. Meanwhile, the application program may be stored in the storage unit 120, installed on the device 100, and driven by the processor 110 to perform the operation (or function) of the device 100.

저장부(120)는 프로세서(110)에서 생성하거나 결정한 임의의 형태의 정보 및 통신부(130)를 통해 수신한 임의의 형태의 정보를 저장할 수 있다. The storage unit 120 may store any type of information generated or determined by the processor 110 and any type of information received through the communication unit 130.

저장부(120)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), SSD 타입(Solid State Disk type), SDD 타입(Silicon Disk Drive type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(random access memory; RAM), SRAM(static random access memory), 롬(read-only memory; ROM), EEPROM(electrically erasable programmable read-only memory), PROM(programmable read-only memory), 자기 메모리, 자기 디스크 및 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 장치(100)는 인터넷(internet) 상에서 저장부(120)의 저장 기능을 수행하는 웹 스토리지(web storage)와 관련되어 동작될 수도 있다. The storage unit 120 is a flash memory type, a hard disk type, a solid state disk type, an SDD type (Silicon Disk Drive type), and a multimedia card micro type. type), card-type memory (e.g. SD or XD memory, etc.), random access memory (RAM), static random access memory (SRAM), read-only memory (ROM), EEPROM (electrically erasable programmable memory) It may include at least one type of storage medium among read-only memory (PROM), programmable read-only memory (PROM), magnetic memory, magnetic disk, and optical disk. The device 100 may be operated in connection with web storage that performs the storage function of the storage unit 120 on the Internet.

본 개시에서 저장부(120)는 복수의 문제를 저장하고 있을 수 있다. 여기서, 복수의 문제 각각에는 난이도 값이 할당되어 있을 수 있다. 그리고, 복수의 문제 각각이 복수의 단원 중 어느 단원과 관련된 문제인지도 복수의 문제 각각에 할당되어 있을 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. In the present disclosure, the storage unit 120 may store a plurality of problems. Here, a difficulty value may be assigned to each of the plurality of problems. Additionally, which of the plurality of units each of the plurality of problems is related to may be assigned to each of the plurality of problems. However, the present disclosure is not limited to this.

본 개시의 몇몇 실시예에 따르면, 복수의 문제는 다양한 프로그램 언어(예를 들어, html 등)로 저장되어 있을 수 있다. 종래 기술에 따르면 문제는 이미지 형태로 저장부(120)에 저장되어 있어 사용자 단말기의 디스플레이부의 크기에 따라서 해상도가 떨어지게 되는 문제가 있었다. 하지만, 본 개시와 같이 프로그램 언어로 복수의 문제가 저장되어 있는 경우, 사용자 단말기의 디스플레이부의 크기가 변하면 그에 따라 1줄에 들어가는 텍스트의 수가 조절될 수 있기 때문에 종래 기술의 문제점이 해결될 수 있다. According to some embodiments of the present disclosure, a plurality of problems may be stored in various program languages (eg, HTML, etc.). According to the prior art, the problem was stored in the storage unit 120 in the form of an image, so there was a problem in that the resolution deteriorated depending on the size of the display unit of the user terminal. However, when a plurality of problems are stored in a program language as in the present disclosure, when the size of the display unit of the user terminal changes, the number of texts in one line can be adjusted accordingly, so the problems of the prior art can be solved.

본 개시에서 문제의 난이도 값은 문제가 기 설정된 기관(예를 들어, 한국 교육 기관 평가원)에서 제공한 문제인 경우, 기 설정된 서버로부터 제공된 데이터 셋을 분석하여 산출된 값일 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. In the present disclosure, the difficulty value of a problem may be a value calculated by analyzing a data set provided from a preset server when the problem is a problem provided by a preset organization (eg, Korea Institute for Educational Evaluation). However, the present disclosure is not limited to this.

기 설정된 서버는 기 설정된 기관의 서버일 수도 있고, 기 설정된 기관과 다른 교육 플랫폼의 서버일 수도 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. The preset server may be a server of a preset institution, or may be a server of an education platform different from the preset institution. However, the present disclosure is not limited to this.

일반적으로, 모의평가, 학력평가 및 수능 문제의 각 문제 별 정답률은 모의평가, 학력평가 및 수능 문제의 출제 기관인 한국 교육 기관 평가원에서 제공하지 않는다. 하지만, 모의평가, 학력평가 및 수능 문제를 풀이한 학생들은 자신이 사용 중인 교육 플랫폼에 자신이 시험에서 적은 정답을 입력할 수 있다. 따라서, 교육 플랫폼의 서버는 모의평가, 학력평가 및 수능 문제의 각 문제 별 정답률을 저장부(120)에 저장하고 있을 수 있고, 기 설정된 기관에서 제공한 문제의 난이도 값을 산출하기 위해서는 복수의 문제 각각의 정답률이 필요하기 때문에 기 설정된 서버는 교육 플랫폼 서버라고 보는 것이 적합하다. In general, the percentage of correct answers for each question in mock evaluations, academic ability evaluations, and CSAT questions is not provided by the Korea Educational Institutions Evaluation Institute, which is the agency that prepares mock evaluations, academic ability evaluations, and CSAT questions. However, students who have solved mock assessments, academic ability assessments, and college entrance exam questions can enter the correct answers they wrote on the test into the education platform they are using. Therefore, the server of the education platform may store the percentage of correct answers for each question in the mock evaluation, academic ability evaluation, and college entrance exam problem in the storage unit 120. In order to calculate the difficulty value of the problem provided by a preset institution, a plurality of problems are required. Because each correct response rate is required, it is appropriate to view the preset server as an education platform server.

데이터 셋은 복수의 문제, 복수의 문제 각각의 배점, 복수의 문제의 문제 타입, 복수의 문제 각각의 정답률, 복수의 문제를 풀이한 복수의 사용자들의 등급 별 원점수, 복수의 문제를 풀이한 복수의 사용자들의 등급 별 표준 점수, 복수의 문제를 풀이한 복수의 사용자들의 등급 별 누적 비율, 복수의 문제를 풀이한 복수의 사용자들의 점수의 평균 값 및 복수의 문제를 풀이한 복수의 사용자들의 점수의 표준 편차를 포함할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. The data set includes multiple problems, points allocated to each of multiple problems, problem type of multiple problems, percentage of correct answers to each of multiple problems, raw scores by grade of multiple users who solved multiple problems, and multiple users who solved multiple problems. Standard scores for each level of users, cumulative ratio for each level of multiple users who solved multiple problems, average score of multiple users who solved multiple problems, and standard score of multiple users who solved multiple problems May contain deviations. However, the present disclosure is not limited to this.

한편, 본 개시에서 문제의 난이도 값은 문제가 자체 제작 문제인 경우, 기 설정된 수의 난이도 설정자로부터 입력 받은 난이도 값의 평균을 계산하여 산출된 값일 수도 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. Meanwhile, in the present disclosure, if the problem is a self-produced problem, the difficulty value of the problem may be a value calculated by calculating the average of the difficulty values input from a preset number of difficulty setters. However, the present disclosure is not limited to this.

본 개시에서 저장부(120)는 복수의 사용자 각각의 실력 데이터를 저장하고 있을 수 있다. 여기서, 실력 데이터는 사용자의 복수의 단원 각각에 대한 실력 범위를 기록하고 있을 수 있다. 따라서, 프로세서(110)는 저장부(120)에 저장된 복수의 사용자 각각의 실력 데이터에서 실력 확인이 필요한 사용자의 실력 데이터를 이용하여, 전체 단원에 대한 실력 범위를 확인할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. In the present disclosure, the storage unit 120 may store skill data for each of a plurality of users. Here, the skill data may record the user's skill range for each of a plurality of units. Accordingly, the processor 110 can check the skill range for the entire unit by using the skill data of the user whose skill needs to be confirmed among the skill data of each of the plurality of users stored in the storage unit 120. However, the present disclosure is not limited to this.

본 개시에서 저장부(120)는, 사용자가 문제를 맞힐 확률 값을 산출할 때 사용되는 문제의 난이도 오차를 최소화하도록 보정하는 기 설정된 제1 파라미터 값, 문제를 사용자가 찍어서 맞힐 확률을 보정하도록 문제 타입에 따라 값이 변화하는 제2 파라미터 값 및 문제를 맞힐 확률 값을 산출하는 수학식에 사용되는 기 설정된 상수 값을 저장하고 있을 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. In the present disclosure, the storage unit 120 includes a preset first parameter value that corrects to minimize the difficulty error of the problem used when calculating the probability value of the user correcting the problem, and the problem correcting the probability of the user correcting the problem by selecting the problem. It may store a second parameter whose value changes depending on the type and a preset constant value used in a mathematical equation that calculates the probability of correcting the problem. However, the present disclosure is not limited to this.

본 개시에서 제1 파라미터 값은 일 수 있다. 이는 도 8을 참조하여 좀더 자세히 후술한다. In the present disclosure, the first parameter value is It can be. This will be described in more detail later with reference to FIG. 8.

본 개시에서 문제 타입은 객관식 문제를 나타내는 제1 타입과 주관식 문제를 나타내는 제2 타입을 포함할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. In the present disclosure, the problem type may include a first type representing a multiple-choice question and a second type representing a subjective question. However, the present disclosure is not limited to this.

본 개시에서 문제 타입에 따라 변화하는 제2 파라미터 값은 문제 타입이 제1 타입인 경우 0보다 큰 값(예를 들어, 0.2)을 가질 수 있고, 문제 타입이 제2 타입인 경우 0일 수 있다. 즉, 제2 파라미터 값은 문제가 제1 타입인 경우보다 문제가 제2 타입인 경우 큰 값을 가질 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. In the present disclosure, the second parameter value that changes depending on the problem type may have a value greater than 0 (e.g., 0.2) when the problem type is the first type, and may be 0 when the problem type is the second type. . That is, the second parameter value may have a larger value when the problem is of the second type than when the problem is of the first type. However, the present disclosure is not limited to this.

본 개시에서 저장부(120)에는 복수의 단원들 사이의 선후행 관계가 저장되어 있을 수 있다. In the present disclosure, the storage unit 120 may store a precedence relationship between a plurality of units.

통신부(130)는 장치(100)와 유선/무선 통신 시스템 사이, 장치(100)와 다른 장치 사이 또는 장치(100)와 외부 서버 사이의 유선/무선 통신을 가능하게 하는 하나 이상의 모듈을 포함할 수 있다. 또한, 통신부(130)는 장치(100)를 하나 이상의 네트워크에 연결하는 하나 이상의 모듈을 포함할 수 있다. The communication unit 130 may include one or more modules that enable wired/wireless communication between the device 100 and a wired/wireless communication system, between the device 100 and another device, or between the device 100 and an external server. there is. Additionally, the communication unit 130 may include one or more modules that connect the device 100 to one or more networks.

통신부(130)는 유선/무선 인터넷 접속을 위한 모듈을 말하는 것으로 장치(100)에 내장되거나 외장될 수 있다. 통신부(130)는 유선/무선 신호를 송수신하도록 이루어질 수 있다. The communication unit 130 refers to a module for wired/wireless Internet access and may be built into or external to the device 100. The communication unit 130 may be configured to transmit and receive wired/wireless signals.

통신부(130)는 이동통신을 위한 기술표준들 또는 통신방식(예를 들어, GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), CDMA2000(Code Division Multi Access 2000), EV-DO(Enhanced Voice-Data Optimized or Enhanced Voice-Data Only), WCDMA(Wideband CDMA), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등)에 따라 구축된 이동 통신망 상에서 기지국, 외부의 단말 및 서버 중 적어도 하나와 무선 신호를 송수신할 수 있다. The communication unit 130 uses technical standards or communication methods for mobile communication (e.g., Global System for Mobile communication (GSM), Code Division Multi Access (CDMA), Code Division Multi Access 2000 (CDMA2000), and EV-DO ( Enhanced Voice-Data Optimized or Enhanced Voice-Data Only), Wideband CDMA (WCDMA), High Speed Downlink Packet Access (HSDPA), High Speed Uplink Packet Access (HSUPA), Long Term Evolution (LTE), Long Term (LTE-A) It is possible to transmit and receive wireless signals with at least one of a base station, an external terminal, and a server on a mobile communication network built according to (Evolution-Advanced), etc.).

무선 인터넷 기술로는, 예를 들어 WLAN(Wireless LAN), Wi-Fi(Wireless-Fidelity), Wi-Fi(Wireless Fidelity) Direct, DLNA(Digital Living Network Alliance), WiBro(Wireless Broadband), WiMAX(World Interoperability for Microwave Access), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등이 있을 수 있다. 다만, 상기에서 나열되지 않은 인터넷 기술까지 포함한 범위에서 적어도 하나의 무선 인터넷 기술에 따라 통신부(130)는 데이터를 송수신할 수 있다. Wireless Internet technologies include, for example, WLAN (Wireless LAN), Wi-Fi (Wireless-Fidelity), Wi-Fi (Wireless Fidelity) Direct, DLNA (Digital Living Network Alliance), WiBro (Wireless Broadband), and WiMAX (Worldwide). There may be Interoperability for Microwave Access), High Speed Downlink Packet Access (HSDPA), High Speed Uplink Packet Access (HSUPA), Long Term Evolution (LTE), and Long Term Evolution-Advanced (LTE-A). However, the communication unit 130 can transmit and receive data according to at least one wireless Internet technology, including Internet technologies not listed above.

더불어, 통신부(130)는 근거리 통신(Short range communication)을 통해 신호를 송수신하도록 이루어질 수도 있다. 통신부(130)는 블루투스(Bluetooth™), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultra Wideband), ZigBee, NFC(Near Field Communication), Wi-Fi(Wireless-Fidelity), Wi-Fi Direct, Wireless USB(Wireless Universal Serial Bus) 기술 중 적어도 하나를 이용하여 근거리 통신을 수행할 수 있다. 통신부(130)는 근거리 통신망(Wireless Area Networks)을 통해 무선 통신을 지원할 수 있다. 근거리 무선 통신망은 근거리 무선 개인 통신망(Wireless Personal Area Networks)일 수 있다.In addition, the communication unit 130 may be configured to transmit and receive signals through short range communication. The communication unit 130 includes Bluetooth™, Radio Frequency Identification (RFID), Infrared Data Association (IrDA), Ultra Wideband (UWB), ZigBee, Near Field Communication (NFC), and Wireless-Fidelity (Wi-Fi). ), Wi-Fi Direct, and Wireless USB (Wireless Universal Serial Bus) technologies can be used to perform short-distance communication. The communication unit 130 may support wireless communication through wireless area networks. Local area wireless networks may be wireless personal area networks.

본 개시의 몇몇 실시예에 따른 장치(100)는 통신부(130)를 통해 테스트 장치와 유/무선 네트워크가 연결될 수 있다. 여기서, “유/무선 네트워크”라 함은, 장치(100)와 테스트 장치 사이에서 페어링 또는/및 데이터 송수신을 위해 다양한 통신 규격 내지 프로토콜을 지원하는 통신 네트워크를 통칭한다. 이러한 유/무선 네트워크는, 규격에 의해 현재 또는 향후 지원될 통신 네트워크를 모두 포함하며, 그를 위한 하나 또는 그 이상의 통신 프로토콜들을 모두 지원 가능하다. The device 100 according to some embodiments of the present disclosure may be connected to a test device and a wired/wireless network through the communication unit 130. Here, “wired/wireless network” collectively refers to a communication network that supports various communication standards or protocols for pairing or/and data transmission/reception between the device 100 and the test device. These wired/wireless networks include all communication networks that are currently or will be supported in the future according to the standard, and can support one or more communication protocols for them.

본 개시에서 장치(100)는 통신부(130)를 통해 사용자 단말기와 통신이 연결될 수 있다. 여기서, 사용자 단말기는 장치(100)의 저장부(120)에 저장된 복수의 문제를 풀어 학습을 수행하거나 문제 풀이 실력을 진단하는 학생의 단말기를 의미할 수 있고, 사용자 단말기는 휴대폰, 스마트 폰(smart phone), 태블릿 PC(tablet PC), 울트라북(ultrabook) 등과 같은 이동 단말기(mobile device)일 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. In the present disclosure, the device 100 may be connected to a user terminal for communication through the communication unit 130. Here, the user terminal may refer to a student terminal that performs learning or diagnoses problem-solving skills by solving a plurality of problems stored in the storage unit 120 of the device 100, and the user terminal may be a mobile phone or smart phone (smart phone). It may be a mobile device such as a phone, tablet PC, ultrabook, etc. However, the present disclosure is not limited to this.

한편, 본 개시의 몇몇 실시예에 따르면 프로세서(110)는 복수의 문제 중 제1 문제를 사용자에게 제공하고, 사용자의 사용자 단말기로부터 제1 문제에 대한 풀이 데이터를 수신하도록 통신부(130)를 제어할 수 있다. 프로세서(110)는 풀이 데이터의 정답 여부에 기초하여 제1 문제와 관련된 단원의 실력 범위를 구성하는 최소 실력 값 및 최대 실력 값 중 하나를 선택할 수 있고, 제1 문제 난이도 값이 선택된 값보다 큰지 여부에 기초하여 선택된 값(최소 실력 값 또는 최대 실력 값)을 변경할지 여부를 결정할 수 있다. 그리고, 프로세서(110)는 선택된 값이 난이도 값으로 변경된 경우 문제와 관련된 단원과 의존 관계가 있는 의존 단원의 실력 범위를 문제와 관련된 단원의 변경된 실력 범위와 동일하게 변경할 수 있다. 이는 도 2 내지 도 6를 참조하여 좀더 자세히 설명한다. Meanwhile, according to some embodiments of the present disclosure, the processor 110 controls the communication unit 130 to provide a first problem among a plurality of problems to the user and to receive solution data for the first problem from the user's user terminal. You can. The processor 110 may select one of the minimum skill value and the maximum skill value constituting the skill range of the unit related to the first problem based on whether the solution data is correct, and whether the difficulty value of the first problem is greater than the selected value. Based on this, it can be decided whether to change the selected value (minimum skill value or maximum skill value). Additionally, when the selected value is changed to a difficulty value, the processor 110 may change the skill range of the dependent unit that has a dependency relationship with the unit related to the problem to be the same as the changed skill range of the unit related to the problem. This is explained in more detail with reference to FIGS. 2 to 6.

도 2는 본 개시의 몇몇 실시예에 따라 사용자에게 제공된 문제와 관련된 단원 및 해당 단원과 의존 관계가 있는 의존 단원의 실력 범위를 업데이트하는 방법의 일례를 설명하기 위한 흐름도이다. 도 3은 본 개시의 몇몇 실시예에 따라 사용자의 문제 풀이 실력을 진단하기 위한 문제를 제공하는 방법의 일례를 설명하기 위한 흐름도이다. 도 4는 본 개시의 몇몇 실시예에 따라 사용자에게 제공된 문제와 관련된 단원의 실력 범위를 업데이트하는 방법의 일례를 설명하기 위한 도면이다. 도 5는 본 개시의 몇몇 실시예에 따라 문제와 관련된 단원과 의존 관계가 있는 의존 단원의 일례를 설명하기 위한 도면이다. 도 6은 본 개시의 몇몇 실시예에 따라 사용자에게 제공된 문제와 관련된 단원 및 해당 단원과 의존 관계가 있는 단원의 실력 범위를 업데이트하는 방법의 일례를 설명하기 위한 흐름도이다. 도 2 내지 도 6과 관련하여 도 1에서 상술한 바와 중복되는 내용은 다시 설명하지 않고 이하 차이점을 중심으로 설명한다. FIG. 2 is a flowchart illustrating an example of a method for updating the skill range of a unit related to a problem provided to a user and a dependent unit that has a dependency relationship with the unit, according to some embodiments of the present disclosure. FIG. 3 is a flowchart illustrating an example of a method of providing a problem for diagnosing a user's problem-solving skills according to some embodiments of the present disclosure. FIG. 4 is a diagram illustrating an example of a method for updating the skill range of a unit related to a problem provided to a user according to some embodiments of the present disclosure. FIG. 5 is a diagram illustrating an example of a dependent unit that has a dependency relationship with a unit related to a problem according to some embodiments of the present disclosure. FIG. 6 is a flowchart illustrating an example of a method for updating the skill range of a unit related to a problem provided to a user and a unit that has a dependency relationship with the unit, according to some embodiments of the present disclosure. In relation to FIGS. 2 to 6 , content that overlaps with what was described above with reference to FIG. 1 will not be described again, but will be described below focusing on the differences.

도 2를 참조하면, 프로세서(110)는 복수의 문제 중 제1 문제를 사용자에게 제공할 수 있다(S1). 여기서, 제1 문제는 사용자의 문제 풀이 실력을 진단하기 위한 문제로 저장부(120)에 저장된 복수의 문제 중 하나일 수 있다. 복수의 문제 중 제1 문제를 사용자에게 제공하는 방법은 도 3을 참조하여 좀더 자세히 설명한다.Referring to FIG. 2, the processor 110 may provide the first problem among a plurality of problems to the user (S1). Here, the first problem is a problem for diagnosing the user's problem-solving skills and may be one of a plurality of problems stored in the storage unit 120. The method of providing the first problem among a plurality of problems to the user will be described in more detail with reference to FIG. 3.

도 3을 참조하면, 프로세서(110)는 복수의 문제 각각을 사용자에게 제공했을 때 예상되는 복수의 문제와 관련된 복수의 기대 값을 산출할 수 있다(S10). Referring to FIG. 3, the processor 110 may calculate a plurality of expected values related to the plurality of problems expected when each of the plurality of problems is provided to the user (S10).

본 개시에서 복수의 기대 값 각각은 하기 수학식 1에 의해 산출될 수 있다. In the present disclosure, each of the plurality of expected values can be calculated by Equation 1 below.

수학식 1에서 는 복수의 문제 중 하나인 제2 문제와 관련된 기대 값일 수 있다. In equation 1 may be an expected value related to the second problem, which is one of the plurality of problems.

본 개시에서 프로세서(110)는 복수의 문제 전부에 대한 기대 값을 순차적 또는 병렬적으로 산출할 수 있다. 여기서, 제2 문제는 저장부(120)에 저장된 복수의 문제 중 현재 기대 값을 산출하는 문제일 수 있다. In the present disclosure, the processor 110 may calculate expected values for all of a plurality of problems sequentially or in parallel. Here, the second problem may be a problem of calculating a current expected value among a plurality of problems stored in the storage unit 120.

수학식 1에서 c는 제2 문제를 사용자가 맞힐 확률 값일 수 있다. 제2 문제를 사용자가 맞힐 확률 값을 산출하는 방법은 제2 문제와 관련된 제1 단원의 개수에 기초하여 결정될 수 있다. 사용자에게 제공되는 제2 문제를 사용자가 맞힐 확률 값은 도 7 내지 도 9을 참조하여 자세히 후술한다. In Equation 1, c may be the probability that the user will answer the second problem correctly. A method of calculating the probability value of the user correcting the second problem may be determined based on the number of first units related to the second problem. The probability value of the user correcting the second problem provided to the user will be described in detail later with reference to FIGS. 7 to 9.

수학식 1에서 는 제2 문제를 맞힐 경우 제2 문제와 관련된 제1 단원과 관련된 예상되는 제1 실력 범위 및 제1 단원과 의존 관계가 있는 의존 단원의 예상되는 제2 실력 범위를 이용하여 산출된 제1 평균 실력 길이 값일 수 있고, 는 제2 문제를 틀릴 경우 제2 문제와 관련된 제1 단원과 관련된 예상되는 업데이트되는 제3 실력 범위 및 제1 단원과 의존 관계가 있는 의존 단원의 예상되는 제4 실력 범위를 이용하여 산출된 제2 평균 실력 길이 값일 수 있다. In equation 1 is the first average skill calculated using the expected first skill range related to the first unit related to the second problem when the second problem is answered correctly and the expected second skill range of the dependent unit that has a dependency relationship with the first unit. It can be a length value, If the second problem is incorrect, the second problem is calculated using the expected updated third skill range related to the first unit related to the second problem and the expected fourth skill range of the dependent unit that has a dependency relationship with the first unit. It may be the average skill length value.

본 개시에서 제1 실력 범위 및 제3 실력 범위는 사용자의 제2 문제와 관련된 제1 단원에 대한 실력을 나타내는 범위로, 최소 실력 값보다 크거나 같고 최대 실력 값보다 작거나 같은 범위를 의미할 수 있다. 다만 이에 한정되는 것은 아니다. In the present disclosure, the first skill range and the third skill range are ranges representing the user's skill for the first unit related to the second problem, and may mean a range that is greater than or equal to the minimum skill value and less than or equal to the maximum skill value. there is. However, it is not limited to this.

본 개시에서 제2 실력 범위 및 제4 실력 범위는 제1 단원과 의존 관계가 있는 제1 의존 단원에 대한 실력을 나타내는 범위로, 제2 실력 범위는 제1 실력 범위와 동일한 범위를 가질 수 있고, 제4 실력 범위는 제3 실력 범위와 동일한 범위를 가질 수 있다. In the present disclosure, the second proficiency range and the fourth proficiency range are ranges representing the proficiency for the first dependent unit that has a dependency relationship with the first unit, and the second proficiency range may have the same range as the first proficiency range, The fourth skill range may have the same range as the third skill range.

한편, 제1 실력 범위, 제2 실력 범위, 제3 실력 범위 및 제4 실력 범위는 현재 해당 단원과 관련된 실력을 나타내는 범위가 아닌, 사용자가 문제를 맞히거나 틀렸다고 가정했을 때 예상되는 해당 단원과 관련된 실력을 나타내는 범위일 수 있다. Meanwhile, the 1st skill range, 2nd skill range, 3rd skill range, and 4th skill range are not ranges that represent the current skill level related to the unit, but are related to the unit expected when the user guesses the problem correctly or incorrectly. It may be a range that indicates skill.

한편, 본 개시의 몇몇 실시예에 따르면 사용자가 문제 풀이 실력을 최초로 진단하는 경우, 프로세서(110)는 복수의 기대 값을 산출하기 전에 사용자의 복수의 단원에 대한 실력 범위가 전부 동일한 초기 실력 범위를 가지도록 초기화할 수 있다. Meanwhile, according to some embodiments of the present disclosure, when a user first diagnoses a problem-solving skill, the processor 110 determines an initial skill range in which the user's skill range for a plurality of units is all the same before calculating a plurality of expected values. It can be initialized to have.

예를 들어, 도 6의 (a)를 참조하면, 프로세서(110)는 복수의 단원(310, 320, 330) 각각이 기 설정된 최소 실력 값(예를 들어, 100)보다 크거나 같고 기 설정된 최대 실력 값(예를 들어, 600)보다 작거나 같은 초기 실력 범위(410, 420, 430)를 갖도록 복수의 단원 각각의 실력 범위를 초기화할 수 있다(510). For example, referring to (a) of FIG. 6, the processor 110 determines that each of the plurality of units 310, 320, and 330 is greater than or equal to a preset minimum skill value (e.g., 100) and a preset maximum skill value. The skill range of each of the plurality of units may be initialized to have an initial skill range (410, 420, 430) that is less than or equal to the skill value (for example, 600) (510).

본 개시에서 기대 값을 산출하기 위해 선택된 제2 문제와 관련된 제1 단원의 제5 실력 범위는 제1 최소 실력 값보다 크거나 같고 제1 최대 실력 값보다 작거나 같은 범위를 가질 수 있다. 여기서, 제5 실력 범위는 기대 값을 산출하는 시점에 제1 단원의 실력 범위를 의미할 수 있다. In the present disclosure, the fifth skill range of the first unit related to the second problem selected to calculate the expected value may have a range that is greater than or equal to the first minimum skill value and less than or equal to the first maximum skill value. Here, the fifth skill range may mean the skill range of the first unit at the time of calculating the expected value.

본 개시의 몇몇 실시예에 따르면, 사용자가 제2 문제를 맞힌다고 가정하고 제2 문제에 할당된 난이도 값과 제1 단원의 업데이트되기 전의 제5 실력 범위를 구성하는 제1 최소 실력 값 중 어느 값의 크기가 더 큰지에 따라 제1 단원의 제1 실력 범위(문제를 맞힌다고 가정했을 때 예상되는 실력 범위)를 구성하는 제2 최소 실력 값이 난이도 값을 가질지 여부가 결정될 수 있다. 그리고, 제2 문제와 관련된 제1 단원과 의존 관계가 있는 의존 단원(선수 단원)의 제2 실력 범위는 제1 실력 범위와 동일한 범위를 가질 수 있다. According to some embodiments of the present disclosure, assuming that the user guesses the second problem, any of the difficulty value assigned to the second problem and the first minimum skill value constituting the fifth skill range before the update of the first unit Depending on whether the size of is larger, it can be determined whether the second minimum skill value constituting the first skill range of the first unit (expected skill range assuming that the question is answered correctly) will have a difficulty value. And, the second skill range of the dependent unit (player unit) that has a dependency relationship with the first unit related to the second problem may have the same range as the first skill range.

일례로, 사용자가 제2 문제를 맞힌다고 가정했을 때 제2 문제에 할당된 난이도 값이 제2 문제와 관련된 제1 단원의 업데이트되기 전의 제5 실력 범위(기대 값 산출 시점의 제1 단원의 실력 범위)를 구성하는 제1 최소 실력 값보다 큰 경우, 제1 단원의 제1 실력 범위(문제를 맞힌다고 가정했을 때 예상되는 실력 범위)를 구성하는 제2 최소 실력 값은 제2 문제의 난이도 값을 가질 수 있다. 이 경우, 제1 실력 범위는 제2 문제의 난이도 값보다 크거나 같고 제5 실력 범위를 구성하는 제1 최대 실력 값보다 작거나 같은 범위를 가질 수 있다. 그리고, 제1 단원과 의존 관계가 있는 의존 단원(선수 단원)의 제2 실력 범위는 제2 문제와 관련된 제1 단원의 제1 실력 범위와 동일한 범위를 가질 수 있다. For example, assuming that the user solves the second problem correctly, the difficulty value assigned to the second problem is in the 5th skill range before the update of the first unit related to the second problem (the skill level of the first unit at the time of calculating the expected value). If it is greater than the first minimum skill value constituting the first skill range (the expected skill range assuming that the problem is answered correctly) of the first unit, the second minimum skill value constituting the difficulty value of the second problem is You can have In this case, the first skill range may be greater than or equal to the difficulty value of the second problem and less than or equal to the first maximum skill value constituting the fifth skill range. And, the second skill range of the dependent member (player member) that has a dependency relationship with the first member may have the same range as the first skill range of the first member related to the second problem.

도 6의 (a)를 참조하면, 사용자의 제2 문제와 관련된 제1 단원이 단원 1(320)인 경우, 제2 문제와 관련된 제1 단원의 업데이트되기 전의 제5 실력 범위(420)는 100보다 크거나 같고 600보다 작거나 같은 범위를 가질 수 있다. 도 6의 (b)를 참조하면, 사용자가 제2 문제를 맞힌다고 가정했을 때 난이도 값이 400인 경우, 단원 1(320)의 제5 실력 범위(도 6의 (a)의 420)를 구성하는 최소 실력 값인 100이 난이도 값인 400보다 작기 때문에 제1 실력 범위(사용자가 문제를 맞혔다고 가정했을 때 예상되는 단원 1(320)의 실력 범위(421))의 최소 실력 값은 400을 가질 수 있다. 이 경우, 단원 1(320)에 대한 제1 실력 범위(421)는 400 이상 600 이하의 범위를 가질 수 있다. 도 6의 (d)를 참조하면, 사용자가 제2 문제를 맞혔다고 가정했기 때문에 선수 단원인 단원 0(320)이 의존 관계가 있는 의존 단원이 되며, 단원 1(320)과 의존 관계가 있는 단원 0(310)의 제2 실력 범위(413)는 단원 1(320)의 제1 실력 범위(423)와 동일한 범위를 가질 수 있다. 이 경우, 단원 0(310)의 제2 실력 범위(413)는 400이상 600이하의 범위를 가질 수 있다. Referring to (a) of FIG. 6, when the first unit related to the user's second problem is unit 1 (320), the fifth skill range 420 before the update of the first unit related to the second problem is 100. It can range from greater than or equal to 600 to less than or equal to 600. Referring to (b) of FIG. 6, assuming that the user answers the second problem correctly, if the difficulty value is 400, the fifth skill range (420 in (a) of FIG. 6) of unit 1 (320) is configured. Since the minimum skill value of 100 is less than the difficulty value of 400, the minimum skill value of the first skill range (expected skill range (421) of Unit 1 (320) assuming the user gets the problem correct) can be 400. there is. In this case, the first skill range 421 for unit 1 320 may range from 400 to 600. Referring to (d) of FIG. 6, since it is assumed that the user has guessed the second problem, unit 0 (320), which is a player unit, becomes a dependent unit with a dependency relationship, and unit 1 (320) has a dependency relationship. The second skill range 413 of unit 0 (310) may have the same range as the first skill range 423 of unit 1 (320). In this case, the second skill range 413 of unit 0 (310) may range from 400 to 600.

다른 일례로, 사용자가 제2 문제를 맞힌다고 가정했을 때 제2 문제에 할당된 난이도 값이 제2 문제와 관련된 제1 단원의 업데이트되기 전의 제5 실력 범위(기대 값 산출 시점의 제1 단원의 실력 범위)를 구성하는 제1 최소 실력 값보다 작거나 같은 경우, 제1 단원의 제1 실력 범위를 구성하는 제2 최소 실력 값은 제5 실력 범위를 구성하는 제1 최소 실력 값을 가질 수 있다. 이 경우, 제1 실력 범위는 제1 최소 실력 값보다 크거나 같고 제1 최대 실력 값보다 작거나 같은 범위를 가질 수 있다. 그리고, 제1 단원과 의존 관계가 있는 의존 단원(선수 단원)의 제2 실력 범위는 제2 문제와 관련된 제1 단원의 제1 실력 범위와 동일한 범위를 가질 수 있다.As another example, assuming that the user guesses the second problem correctly, the difficulty value assigned to the second problem is the 5th skill range before the update of the first unit related to the second problem (the level of the first unit at the time of calculating the expected value). If it is less than or equal to the first minimum skill value constituting the first skill range (skill range), the second minimum skill value constituting the first skill range of the first unit may have the first minimum skill value constituting the fifth skill range. . In this case, the first skill range may be greater than or equal to the first minimum skill value and less than or equal to the first maximum skill value. And, the second skill range of the dependent member (player member) that has a dependency relationship with the first member may have the same range as the first skill range of the first member related to the second problem.

도 6의 (a)를 참조하면, 사용자의 제2 문제와 관련된 제1 단원이 단원 1(320)인 경우, 제2 문제와 관련된 제1 단원의 업데이트되기 전의 제5 실력 범위(420)는 100보다 크거나 같고 600보다 작거나 같은 범위를 가질 수 있다. 사용자가 제2 문제를 맞힌다고 가정했을 때 제2 문제에 할당된 난이도 값이 50인 경우, 제2 문제와 관련된 제1 단원인 단원 1(320)의 제5 실력 범위를 구성하는 최소 실력 값인 100이 난이도 값인 50보다 크기 때문에 제1 실력 범위(사용자가 문제를 맞혔다고 가정했을 때 예상되는 단원 1(320)의 실력 범위)의 최소 실력 값은 100을 가질 수 있다. 이 경우, 단원 1(320)에 대한 제1 실력 범위(420)는 100 이상 600 이하의 범위를 가질 수 있다. 그리고, 사용자가 제2 문제를 맞혔다고 가정했기 때문에 선수 단원인 단원 0(320)이 의존 관계가 있는 의존 단원이 되며, 단원 1(320)과 의존 관계가 있는 단원 0(310)에 대한 제2 실력 범위(410)도 100 이상 600 이하의 범위를 가질 수 있다. Referring to (a) of FIG. 6, when the first unit related to the user's second problem is unit 1 (320), the fifth skill range 420 before the update of the first unit related to the second problem is 100. It can range from greater than or equal to 600 to less than or equal to 600. Assuming that the user gets the second problem right, if the difficulty value assigned to the second problem is 50, the minimum skill value constituting the fifth skill range of unit 1 (320), the first unit related to the second problem, is 100. Since this difficulty value is greater than 50, the minimum skill value of the first skill range (the expected skill range of unit 1 (320) assuming the user gets the problem correct) can be 100. In this case, the first skill range 420 for unit 1 320 may range from 100 to 600. And, since it is assumed that the user got the second problem right, unit 0 (320), which is a player unit, becomes a dependent unit with a dependency relationship, and the second unit for unit 0 (310), which has a dependency relationship with unit 1 (320), is 2 The skill range (410) can also range from 100 to 600.

본 개시의 몇몇 실시예에 따르면, 사용자가 제2 문제를 틀린다고 가정하고 제2 문제에 할당된 난이도 값과 제1 단원의 업데이트되기 전의 제5 실력 범위를 구성하는 제1 최대 실력 값 중 어느 값의 크기가 더 큰지에 따라 제1 단원의 제3 실력 범위(문제를 틀린다고 가정했을 때 예상되는 실력 범위)를 구성하는 제2 최대 실력 값이 난이도 값을 가질지 여부가 결정될 수 있다. 그리고, 제2 문제와 관련된 제1 단원과 의존 관계가 있는 의존 단원(후행 단원)의 제4 실력 범위는 제3 실력 범위와 동일한 범위를 가질 수 있다.According to some embodiments of the present disclosure, assuming that the user gets the second problem wrong, one of the difficulty value assigned to the second problem and the first maximum skill value constituting the fifth skill range before the update of the first unit Depending on whether the size of is larger, it can be determined whether the second maximum skill value constituting the third skill range of the first unit (expected skill range assuming that the problem is incorrect) will have a difficulty value. Additionally, the fourth skill range of the dependent unit (subsequent unit) that has a dependency relationship with the first unit related to the second problem may have the same range as the third skill range.

일례로, 사용자가 제2 문제를 틀린다고 가정했을 때 제2 문제에 할당된 난이도 값이 제2 문제와 관련된 제1 단원의 업데이트되기 전의 제5 실력 범위(기대 값 산출 시점의 제1 단원의 실력 범위)를 구성하는 제1 최대 실력 값보다 작거나 같은 경우, 제1 단원의 제3 실력 범위(문제를 틀린다고 가정했을 때 예상되는 실력 범위)를 구성하는 제2 최대 실력 값은 제2 문제의 난이도 값을 가질 수 있다. 이 경우, 제3 실력 범위는 제1 최소 실력 값보다 크거나 같고 제2 문제의 난이도 값보다 작거나 같은 범위를 가질 수 있다. 그리고, 제1 단원과 의존 관계가 있는 의존 단원(후행 단원)의 제4 실력 범위는 제2 문제와 관련된 제1 단원의 제3 실력 범위와 동일한 범위를 가질 수 있다.For example, assuming that the user gets the second problem wrong, the difficulty value assigned to the second problem is in the 5th skill range before the update of the first unit related to the second problem (the skill level of the first unit at the time of calculating the expected value). If it is less than or equal to the first maximum skill value constituting the first unit's third skill range (the expected skill range assuming you get the problem wrong), the second maximum skill value constituting the third skill range of the first unit (the expected skill range assuming you get the problem wrong) is the second maximum skill value of the second problem. It can have a difficulty value. In this case, the third skill range may be greater than or equal to the first minimum skill value and less than or equal to the difficulty value of the second problem. And, the fourth skill range of the dependent unit (subsequent unit) that has a dependency relationship with the first unit may have the same range as the third skill range of the first unit related to the second problem.

도 6의 (a)를 참조하면, 사용자의 제2 문제와 관련된 제1 단원이 단원 1(320)인 경우, 제2 문제와 관련된 제1 단원의 업데이트되기 전의 제5 실력 범위(420)는 100보다 크거나 같고 600보다 작거나 같은 범위를 가질 수 있다. 도 6의 (c)를 참조하면, 사용자가 제2 문제를 틀린다고 가정했을 때 난이도 값이 400인 경우, 단원 1(320)의 제5 실력 범위(도 6의 (a)의 420)를 구성하는 최대 실력 값인 600이 난이도 값인 400보다 크기 때문에 제3 실력 범위(사용자가 문제를 틀린다고 가정했을 때 예상되는 단원 1(320)의 실력 범위(422))의 최대 실력 값은 400을 가질 수 있다. 이 경우, 단원 1(320)에 대한 제3 실력 범위(422)는 100 이상 400 이하의 범위를 가질 수 있다. 도 6의 (e)를 참조하면, 사용자가 문제를 틀렸다고 가정했기 때문에 후행 단원인 단원 2(330)가 의존 관계가 있는 의존 단원이 되며, 단원 1(320)과 의존 관계가 있는 단원 2(330)의 제4 실력 범위(434)는 단원 1(320)의 제3 실력 범위(424)와 동일한 범위를 가질 수 있다. 이 경우, 단원 2(330)의 제4 실력 범위(434)는 100이상 400이하의 범위를 가질 수 있다.Referring to (a) of FIG. 6, when the first unit related to the user's second problem is unit 1 (320), the fifth skill range 420 before the update of the first unit related to the second problem is 100. It can range from greater than or equal to 600 to less than or equal to 600. Referring to (c) of FIG. 6, assuming that the user gets the second problem wrong and the difficulty value is 400, the fifth skill range (420 in (a) of FIG. 6) of unit 1 (320) is configured. Since the maximum skill value of 600 is greater than the difficulty value of 400, the maximum skill value of the third skill range (expected skill range (422) of unit 1 (320) assuming the user gets the problem wrong) can be 400. . In this case, the third skill range 422 for unit 1 320 may range from 100 to 400. Referring to (e) of FIG. 6, since the user assumed that the problem was incorrect, unit 2 (330), which is a subsequent unit, becomes a dependent unit with a dependency relationship, and unit 2 (330) has a dependency relationship with unit 1 (320). )'s fourth skill range 434 may have the same range as the third skill range 424 of unit 1 (320). In this case, the fourth skill range 434 of unit 2 330 may range from 100 to 400.

다른 일례로, 사용자가 제2 문제를 틀린다고 가정했을 때 제2 문제에 할당된 난이도 값이 제2 문제와 관련된 제1 단원의 업데이트되기 전의 제5 실력 범위(기대 값 산출 시점의 제1 단원의 실력 범위)를 구성하는 제1 최대 실력 값보다 큰 경우, 제1 단원의 제3 실력 범위를 구성하는 제2 최대 실력 값은 제5 실력 범위를 구성하는 제1 최대 실력 값을 가질 수 있다. 이 경우, 제3 실력 범위는 제1 최소 실력 값보다 크거나 같고 제1 최대 실력 값보다 작거나 같은 범위를 가질 수 있다. 그리고, 제1 단원과 의존 관계가 있는 의존 단원(후행 단원)의 제4 실력 범위는 제2 문제와 관련된 제1 단원의 제3 실력 범위와 동일한 범위를 가질 수 있다.As another example, assuming that the user gets the second problem wrong, the difficulty value assigned to the second problem is the 5th skill range before the update of the first unit related to the second problem (the level of the first unit at the time of calculating the expected value). If it is greater than the first maximum skill value constituting the third skill range of the first unit, the second maximum skill value constituting the third skill range of the first unit may have the first maximum skill value constituting the fifth skill range. In this case, the third skill range may be greater than or equal to the first minimum skill value and less than or equal to the first maximum skill value. And, the fourth skill range of the dependent unit (subsequent unit) that has a dependency relationship with the first unit may have the same range as the third skill range of the first unit related to the second problem.

도 6의 (a)를 참조하면, 사용자의 제2 문제와 관련된 제1 단원이 단원 1(320)인 경우, 제2 문제와 관련된 제1 단원의 업데이트되기 전의 제5 실력 범위(420)는 100보다 크거나 같고 600보다 작거나 같은 범위를 가질 수 있다. 사용자가 제2 문제를 틀린다고 가정했을 때 제2 문제에 할당된 난이도 값이 700인 경우, 제2 문제와 관련된 제1 단원인 단원 1(320)의 제5 실력 범위를 구성하는 최대 실력 값인 600이 난이도 값인 700보다 작기 때문에 제3 실력 범위(사용자가 문제를 틀린다고 가정했을 때 예상되는 단원 1(320)의 실력 범위)의 최대 실력 값은 600을 가질 수 있다. 이 경우, 단원 1(320)에 대한 제3 실력 범위(421)는 100 이상 600 이하의 범위를 가질 수 있다. 그리고, 사용자가 문제를 틀렸다고 가정했기 때문에 후행 단원인 단원 2(330)가 의존 관계가 있는 의존 단원이 되며, 단원 1(320)과 의존 관계가 있는 단원 2(330)에 대한 제2 실력 범위(430)도 100 이상 600 이하의 범위를 가질 수 있다.Referring to (a) of FIG. 6, when the first unit related to the user's second problem is unit 1 (320), the fifth skill range 420 before the update of the first unit related to the second problem is 100. It can range from greater than or equal to 600 to less than or equal to 600. Assuming that the user gets the second problem wrong, if the difficulty value assigned to the second problem is 700, 600 is the maximum skill value that constitutes the fifth skill range of Unit 1 (320), the first unit related to the second problem. Since this difficulty value is less than 700, the maximum skill value of the third skill range (the expected skill range of Unit 1 (320) assuming the user gets the problem wrong) can be 600. In this case, the third skill range 421 for unit 1 320 may range from 100 to 600. And, since it was assumed that the user got the problem wrong, Unit 2 (330), which is a subsequent unit, becomes a dependent unit with a dependency relationship, and the second skill range for Unit 2 (330), which has a dependency relationship with Unit 1 (320), is ( 430) may also range from 100 to 600.

본 개시에서 평균 실력 길이 값은 전체 단원의 실력 길이 값의 평균으로 정의될 수 있다. 그리고, 실력 길이 값은 해당 단원의 실력 범위를 구성하는 최대 실력 값에서 최소 실력 값을 뺀 값으로 정의될 수 있다. In the present disclosure, the average skill length value may be defined as the average of the skill length values of all units. Additionally, the skill length value may be defined as the value obtained by subtracting the minimum skill value from the maximum skill value constituting the skill range of the unit.

예를 들어, 도 6의 (a)와 같이 복수의 단원(310, 320, 330) 각각의 실력 범위(410, 420, 430)가 100 이상 600이하의 범위를 갖는 경우, 복수의 단원(310, 320, 330) 각각의 실력 길이 값은 500이 될 수 있고, 복수의 단원(310, 320, 330) 각각의 실력 길이 값의 평균 값도 500이 될 수 있다. For example, as shown in (a) of Figure 6, when the skill ranges (410, 420, 430) of each of the plurality of units (310, 320, 330) have a range of 100 to 600, the plurality of units (310, 320, 330), the skill length value of each may be 500, and the average value of the skill length values of each of the plurality of units (310, 320, 330) may also be 500.

수학식 1에서 를 산출하는 방법을 설명하면 다음과 같다. 여기서, 는 제2 문제를 맞힐 경우 제2 문제와 관련된 제1 단원과 관련된 예상되는 제1 실력 범위 및 제1 단원과 의존 관계가 있는 의존 단원의 예상되는 제2 실력 범위를 이용하여 산출된 제1 평균 실력 길이 값일 수 있다. 이하, 설명의 편의를 위해 제2 문제의 난이도 값은 400이라고 가정하고 설명한다. In equation 1 The method for calculating is explained as follows. here, is the first average skill calculated using the expected first skill range related to the first unit related to the second problem when the second problem is answered correctly and the expected second skill range of the dependent unit that has a dependency relationship with the first unit. It can be a length value. Hereinafter, for convenience of explanation, it is assumed that the difficulty value of the second problem is 400.

도 6의 (d)를 참조하면, 제2 문제와 관련된 제1 단원이 단원 1(320)인 경우, 제1 문제를 맞힐 경우 단원 1(320)과 관련된 예상되는 제1 실력 범위(423) 및 단원 1(320)과 의존 관계가 있는 의존 단원인 단원 0(310)의 예상되는 제2 실력 범위(413)를 이용하여 제1 평균 실력 길이 값이 산출될 수 있다. 구체적으로, 의존 단원인 단원 0(310)의 제2 실력 범위(413)에 기초하여 산출된 실력 길이 값 및 제2 문제와 관련된 단원 1(320)의 제1 실력 범위(423)에 기초하여 산출된 실력 길이 값은 200이고, 복수의 단원 중 적어도 하나의 나머지 단원인 단원 2(330)의 실력 범위(433)에 기초하여 산출된 실력 길이 값이 500이 되는 것을 확인할 수 있다. 이 경우, 전체 단원의 실력 길이 값의 평균인 제1 평균 실력 길이 값은 300이 되는 것을 확인할 수 있다. 본 개시에서 는 300이 되는 것을 확인할 수 있다. Referring to (d) of FIG. 6, when the first unit related to the second problem is unit 1 (320), when the first problem is answered correctly, the expected first skill range 423 related to unit 1 (320) and The first average skill length value can be calculated using the expected second skill range 413 of unit 0 (310), which is a dependent unit that has a dependency relationship with unit 1 (320). Specifically, the skill length value calculated based on the second skill range (413) of unit 0 (310), which is a dependent unit, and the first skill range (423) of unit 1 (320) related to the second problem. It can be seen that the calculated skill length value is 200, and the skill length value calculated based on the skill range 433 of unit 2 330, which is at least one remaining unit among the plurality of units, is 500. In this case, it can be seen that the first average skill length value, which is the average of the skill length values of all units, is 300. In this disclosure It can be confirmed that is 300.

수학식 1에서 를 산출하는 방법을 설명하면 다음과 같다. 여기서, 는 제2 문제를 틀릴 경우 제2 문제와 관련된 제1 단원과 관련된 예상되는 업데이트되는 제3 실력 범위 및 제1 단원과 의존 관계가 있는 의존 단원의 예상되는 제4 실력 범위를 이용하여 산출된 제2 평균 실력 길이 값일 수 있다.In equation 1 The method for calculating is explained as follows. here, If the second problem is incorrect, the second problem is calculated using the expected updated third skill range related to the first unit related to the second problem and the expected fourth skill range of the dependent unit that has a dependency relationship with the first unit. It may be the average skill length value.

도 6의 (e)를 참조하면 제2 문제와 관련된 제1 단원이 단원 1(320)인 경우, 제1 문제를 틀릴 경우 단원 1(320)과 관련된 예상되는 제3 실력 범위(424) 및 단원 1(320)과 의존 관계가 있는 의존 단원인 단원 2(330)의 예상되는 제4 실력 범위(434)를 이용하여 제2 평균 실력 길이 값이 산출될 수 있다. 구체적으로, 의존 단원인 단원 2(330)의 제4 실력 범위(434)에 기초하여 산출된 실력 길이 값 및 제2 문제와 관련된 단원 1(320)의 제3 실력 범위(424)에 기초하여 산출된 실력 길이 값은 300이고, 복수의 단원 중 적어도 하나의 나머지 단원인 단원 0(310)의 실력 범위(414)에 기초하여 산출된 실력 길이 값이 500이 되는 것을 확인할 수 있다. 이 경우, 전체 단원의 실력 길이 값의 평균인 제2 평균 실력 길이 값은 366(소수점 이하의 값은 버림)이 되는 것을 확인할 수 있다. 본 개시에서 는 366이 되는 것을 확인할 수 있다. Referring to (e) of FIG. 6, when the first unit related to the second problem is unit 1 (320), if the first problem is incorrect, the expected third skill range 424 related to unit 1 (320) and the unit The second average skill length value can be calculated using the expected fourth skill range 434 of unit 2 (330), which is a dependent unit that has a dependency relationship with unit 1 (320). Specifically, the skill length value calculated based on the fourth skill range (434) of unit 2 (330), which is a dependent unit, and the third skill range (424) of unit 1 (320) related to the second problem. It can be seen that the calculated skill length value is 300, and the skill length value calculated based on the skill range 414 of unit 0 (310), which is at least one remaining unit among the plurality of units, is 500. In this case, it can be confirmed that the second average skill length value, which is the average of the skill length values of all units, is 366 (values below the decimal point are rounded off). In this disclosure It can be confirmed that is 366.

결과적으로 수학식 1에서 제1 평균 실력 길이 값 및 제2 평균 실력 길이 값은 사용자에게 제2 문제가 제공된다고 가정하고 사용자가 제2 문제를 맞히는지에 따라 예상되는 업데이트된 복수의 단원 전체의 실력 범위를 이용하여 산출된 복수의 실력 길이 값의 평균을 구해서 산출될 수 있다. 즉, 프로세서(110)는 제2 문제 제공을 가정하고 업데이트되는 실력 범위를 예상한 후 모든 단원 각각의 실력 범위를 이용하여 복수의 실력 길이 값이 산출할 수 있고, 복수의 실력 길이 값의 평균을 구해서 수학식 1의 제1 평균 실력 길이 값 및 제2 평균 길이 값을 산출할 수 있다.As a result, in Equation 1, the first average skill length value and the second average skill length value are the expected updated skill range of the entire plurality of units, assuming that the second problem is provided to the user. It can be calculated by calculating the average of a plurality of skill length values calculated using . That is, the processor 110 can assume provision of the second problem, estimate the updated skill range, calculate a plurality of skill length values using the skill range of each unit, and calculate the average of the plurality of skill length values. By obtaining this, the first average skill length value and the second average length value of Equation 1 can be calculated.

결과적으로, 프로세서(110)는 상술한 수학식 1을 이용하여 복수의 문제 각각을 사용자에게 제공했을 때 예상되는 복수의 문제 각각과 관련된 기대 값을 산출할 수 있다. As a result, the processor 110 can use Equation 1 described above to calculate the expected value associated with each of the plurality of problems expected when each of the plurality of problems is provided to the user.

도 3을 다시 참조하면, 프로세서(110)는 단계(S10)에서 복수의 문제 각각과 관련된 기대 값을 산출한 경우, 복수의 기대 값 중 가장 작은 기대 값을 갖는 문제를 사용자에게 제공할 수 있다(S20). 여기서, 가장 작은 기대 값을 문제가 복수 개인 경우, 프로세서(110)는 복수 개의 문제 중 하나의 문제를 랜덤하게 선택해서 사용자에게 제공할 수 있다. Referring again to FIG. 3, when the processor 110 calculates the expected value associated with each of the plurality of problems in step S10, the problem with the smallest expected value among the plurality of expected values may be provided to the user ( S20). Here, when there are multiple problems with the lowest expected value, the processor 110 may randomly select one problem from among the plurality of problems and provide it to the user.

다시 도 2를 참조하면, 프로세서(110)는 제1 문제에 대한 풀이 데이터를 사용자의 사용자 단말기로부터 수신할 수 있다(S2). 여기서, 사용자는 문제 풀이 실력을 진단하는 사용자(예를 들어, 고등학생, 중학생, 초등학생 등)로 장치(100)의 통신부(130)와 통신이 연결된 사용자 단말기의 사용자를 의미할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. Referring again to FIG. 2, the processor 110 may receive solution data for the first problem from the user's user terminal (S2). Here, the user may refer to a user who diagnoses problem-solving skills (for example, a high school student, a middle school student, an elementary school student, etc.) and a user of a user terminal that is connected to the communication unit 130 of the device 100. However, the present disclosure is not limited to this.

프로세서(110)는 단계(S2)에서 풀이 데이터를 수신한 경우, 풀이 데이터의 정답 여부에 기초하여 제1 문제와 관련된 단원의 실력 범위를 구성하는 최소 실력 값 및 최대 실력 값 중 하나를 선택할 수 있다(S3). 그리고, 프로세서(110)는 제1 문제의 난이도 값이 최소 실력 값 및 최대 실력 값 중 선택된 값보다 큰지 여부에 기초하여 선택된 값을 난이도 값으로 변경할지 여부를 결정할 수 있다(S4). 이는 도 4를 참조하여 좀더 자세히 살펴본다. When the processor 110 receives the solution data in step S2, the processor 110 may select one of the minimum skill value and the maximum skill value constituting the skill range of the unit related to the first problem based on whether the solution data is correct. (S3). In addition, the processor 110 may determine whether to change the selected value to the difficulty value based on whether the difficulty value of the first problem is greater than the selected value among the minimum skill value and the maximum skill value (S4). This will be looked at in more detail with reference to Figure 4.

도 4를 참조하면, 프로세서(110)는 풀이 데이터를 수신한 경우, 풀이 데이터를 분석하여 정답 여부를 인식할 수 있다(S31).Referring to FIG. 4, when the processor 110 receives solving data, it can analyze the solving data to recognize whether the answer is correct (S31).

구체적으로, 저장부(120)에는 정답 데이터가 저장되어 있을 수 있고, 프로세서(110)는 저장부(120)에 저장된 정답 데이터와 풀이 데이터를 이용하여 풀이 데이터가 정답인지 여부를 결정할 수 있다. Specifically, correct answer data may be stored in the storage unit 120, and the processor 110 may use the correct answer data and solution data stored in the storage unit 120 to determine whether the solution data is the correct answer.

일례로, 정답 데이터는 문제가 객관식 문제인 경우 기 설정된 숫자를 포함할 수 있다. 프로세서(110)는 풀이 데이터에 포함된 숫자와 정답 데이터에 포함된 숫자가 동일한 경우 정답이라고 결정할 수 있다. For example, the correct answer data may include a preset number if the question is a multiple choice question. The processor 110 may determine that the correct answer is when the numbers included in the solution data and the numbers included in the correct answer data are the same.

다른 일례로, 문제가 주관식 문제인 경우 정답이 다양한 형태로 입력될 수 있기 때문에 다양한 형태의 텍스트 데이터들이 정답 데이터로 저장되어 있을 수 있다. 이 경우, 프로세서(110)는 풀이 데이터와 텍스트 데이터들을 비교하여 정답 데이터 내에 풀이 데이터와 동일 또는 유사한 텍스트 데이터가 존재하는 경우에 정답이라고 인식할 수 있다. 여기서, 풀이 데이터와 텍스트 데이터가 유사한지 여부는 자카드 유사도 알고리즘, 유클리디언 유사도 알고리즘, 코사인 유사도 알고리즘, 맨하탄 유사도 알고리즘 등과 같이 텍스트의 유사도를 산출하는 다양한 알고리즘을 이용하여 인식될 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. As another example, if the problem is a subjective question, the correct answer can be entered in various forms, so various types of text data may be stored as answer data. In this case, the processor 110 may compare the solution data and text data and recognize the correct answer as the correct answer if text data that is the same or similar to the solution data exists in the correct answer data. Here, whether the solution data and the text data are similar can be recognized using various algorithms that calculate the similarity of the text, such as the Jaccard similarity algorithm, the Euclidean similarity algorithm, the cosine similarity algorithm, and the Manhattan similarity algorithm. However, the present disclosure is not limited to this.

프로세서(110)는 단계(S31)에서 풀이 데이터가 정답이라고 인식한 경우, 제1 문제와 관련된 단원에 대한 실력 범위를 구성하는 최소 실력 값을 선택할 수 있다(S32). 프로세서(110)는 제1 문제의 난이도 값이 단계(S32)에서 선택된 최소 실력 값보다 큰지 여부를 확인할 수 있다(S41). 그리고, 프로세서(110)는 제1 문제의 난이도 값이 최소 실력 값보다 큰지 여부에 기초하여 최소 실력 값을 난이도 값으로 변경할지 여부를 결정할 수 있다. 본 개시에서 프로세서(110)는 제1 문제의 난이도 값이 최소 실력 값보다 큰지 여부가 확인한다고 설명하였으나 이에 한정되는 것은 아니고, 프로세서(110)는 제1 문제의 난이도 값이 최소 실력 값보다 작은지 여부를 확인할 수도 있고, 제1 문제의 난이도 값이 최소 실력 값보다 작거나 같은지 여부를 확인할 수도 있는 등 다양한 실시 태양이 존재할 수 있다. If the processor 110 recognizes that the solution data is the correct answer in step S31, the processor 110 may select a minimum skill value constituting the skill range for the unit related to the first problem (S32). The processor 110 may check whether the difficulty value of the first problem is greater than the minimum skill value selected in step S32 (S41). Additionally, the processor 110 may determine whether to change the minimum skill value to the difficulty value based on whether the difficulty value of the first problem is greater than the minimum skill value. In the present disclosure, it is explained that the processor 110 checks whether the difficulty value of the first problem is greater than the minimum skill value, but the limitation is not limited to this, and the processor 110 determines whether the difficulty value of the first problem is less than the minimum skill value. Various implementation aspects may exist, such as checking whether or not the difficulty value of the first problem is less than or equal to the minimum skill value.

일례로, 프로세서(110)는 제1 문제의 난이도 값이 제1 문제와 관련된 단원에 대한 실력 범위를 구성하는 최소 실력 값보다 크다고 인식한 경우(S41, Yes), 최소 실력 값을 난이도 값으로 변경한다고 결정할 수 있다(S42). For example, when the processor 110 recognizes that the difficulty value of the first problem is greater than the minimum skill value constituting the skill range for the unit related to the first problem (S41, Yes), it changes the minimum skill value to the difficulty value. You can decide to do it (S42).

다른 일례로, 프로세서(110)는 제1 문제의 난이도 값이 제1 문제와 관련된 단원에 대한 실력 범위를 구성하는 최소 실력 값보다 작거나 같다고 인식한 경우(S41, No), 최소 실력 값을 난이도 값으로 변경하지 않고 유지한다고 결정할 수 있다. As another example, when the processor 110 recognizes that the difficulty value of the first problem is less than or equal to the minimum skill value constituting the skill range for the unit related to the first problem (S41, No), the minimum skill value is set to the difficulty level. You can decide to keep the value unchanged.

한편, 프로세서(110)는 단계(S31)에서 풀이 데이터가 정답이 아니라고 인식한 경우, 즉 풀이 데이터가 오답이라고 인식한 경우, 제1 문제와 관련된 단원에 대한 실력 범위를 구성하는 최대 실력 값을 선택할 수 있다(S33). 프로세서(110)는 제1 문제의 난이도 값이 단계(S33)에서 선택된 최대 실력 값보다 큰지 여부를 확인할 수 있다(S43). 그리고, 프로세서(110)는 제1 문제의 난이도 값이 최대 실력 값보다 큰지 여부에 기초하여 최대 실력 값을 난이도 값으로 변경할지 여부를 결정할 수 있다. 본 개시에서 프로세서(110)는 제1 문제의 난이도 값이 최대 실력 값보다 큰지 여부가 확인한다고 설명하였으나 이에 한정되는 것은 아니고, 프로세서(110)는 제1 문제의 난이도 값이 최대 실력 값보다 작은지 여부를 확인할 수도 있고, 제1 문제의 난이도 값이 최대 실력 값보다 작거나 같은지 여부를 확인할 수도 있는 등 다양한 실시 태양이 존재할 수 있다.Meanwhile, if the processor 110 recognizes in step S31 that the solution data is not the correct answer, that is, if it recognizes that the solution data is an incorrect answer, it selects the maximum skill value constituting the skill range for the unit related to the first problem. (S33). The processor 110 may check whether the difficulty value of the first problem is greater than the maximum skill value selected in step S33 (S43). Additionally, the processor 110 may determine whether to change the maximum skill value to the difficulty value based on whether the difficulty value of the first problem is greater than the maximum skill value. In the present disclosure, it is explained that the processor 110 checks whether the difficulty value of the first problem is greater than the maximum skill value, but the limit is not limited to this, and the processor 110 determines whether the difficulty value of the first problem is less than the maximum skill value. There may be various implementation embodiments, such as checking whether or not the difficulty value of the first problem is less than or equal to the maximum skill value.

일례로, 프로세서(110)는 제1 문제의 난이도 값이 제1 문제와 관련된 단원에 대한 실력 범위를 구성하는 최대 실력 값보다 크다고 인식한 경우(S43, No), 최대 실력 값을 난이도 값으로 변경하지 않고 유지한다고 결정할 수 있다. For example, when the processor 110 recognizes that the difficulty value of the first problem is greater than the maximum skill value constituting the skill range for the unit related to the first problem (S43, No), it changes the maximum skill value to the difficulty value. You can decide not to do it and keep it.

다른 일례로, 프로세서(110)는 제1 문제 난이도 값이 제1 문제와 관련된 단원에 대한 실력 범위를 구성하는 최대 실력 값보다 작거나 같다고 인식한 경우(S43, No), 최대 실력 값을 난이도 값으로 변경한다고 결정할 수 있다(S44). As another example, when the processor 110 recognizes that the difficulty value of the first problem is less than or equal to the maximum skill value constituting the skill range for the unit related to the first problem (S43, No), the maximum skill value is set to the difficulty value. You can decide to change it to (S44).

상술한 예시들을 도 6을 참조하여 좀더 자세히 살펴보면 다음과 같다. Looking at the above-described examples in more detail with reference to FIG. 6, the examples are as follows.

도 6의 (a)에서 제1 문제와 관련된 단원이 단원 1(320) 경우, 프로세서(110)는 단원 1(320)의 실력 범위가 100보다 크거나 같고 600보다 작거나 같은 범위를 갖고 있는 것을 확인할 수 있다. 그리고, 제1 문제의 난이도 값이 400이라고 가정하고 이하 살펴본다. In (a) of Figure 6, when the unit related to the first problem is unit 1 (320), the processor 110 determines that the skill range of unit 1 (320) is greater than or equal to 100 and less than or equal to 600. You can check it. And, let's assume that the difficulty value of the first problem is 400 and look at it below.

도 6의 (b)를 참조하면, 프로세서(110)는 풀이 데이터가 정답이라고 인식한 경우, 제1 문제의 난이도 값인 400이 단원 1(320)의 최소 실력 값인 100보다 큰지 여부를 확인할 수 있다. 제1 문제의 난이도 값이 단원 1(320)의 최소 실력 값보다 크기 때문에 프로세서(110)는 단원 1(320)의 최소 실력 값을 제1 문제의 난이도 값인 400으로 변경한다고 결정할 수 있다. Referring to (b) of FIG. 6, when the processor 110 recognizes that the solution data is the correct answer, it can check whether the difficulty value of 400 of the first problem is greater than 100, the minimum skill value of unit 1 (320). Since the difficulty value of the first problem is greater than the minimum skill value of unit 1 (320), the processor 110 may determine to change the minimum skill value of unit 1 (320) to 400, which is the difficulty value of the first problem.

한편, 도면에 도시되지는 않았지만, 프로세서(110)는 풀이 데이터가 정답이라고 인식하고 제1 문제의 난이도 값이 50이라고 확인한 경우, 제1 문제의 난이도 값이 최소 실력 값인 100보다 크지 않기 때문에 단원 1(320)의 최소 실력 값을 제1 문제의 난이도 값인 50으로 변경하지 않고 유지한다고 결정할 수 있다. Meanwhile, although not shown in the drawing, when the processor 110 recognizes that the solution data is the correct answer and confirms that the difficulty value of the first problem is 50, the difficulty value of the first problem is not greater than the minimum skill value of 100, so Unit 1 It may be decided to keep the minimum skill value of (320) unchanged at 50, which is the difficulty value of the first problem.

도 6의 (c)를 참조하면, 프로세서(110)는 풀이 데이터가 오답이라고 인식한 경우, 제1 문제의 난이도 값인 400이 단원 1(320)의 최대 실력 값인 600보다 큰지 여부를 확인할 수 있다. 제1 문제의 난이도 값이 단원 1(320)의 최대 실력 값보다 크지 않기 때문에 프로세서(110)는 단원 1(320)의 최대 실력 값을 제1 문제의 난이도 값인 400으로 변경한다고 결정할 수 있다. Referring to (c) of FIG. 6, when the processor 110 recognizes that the solution data is an incorrect answer, it can check whether the difficulty value of 400 of the first problem is greater than 600, the maximum skill value of unit 1 (320). Since the difficulty value of the first problem is not greater than the maximum skill value of unit 1 (320), the processor 110 may determine to change the maximum skill value of unit 1 (320) to 400, which is the difficulty value of the first problem.

한편, 도면에 도시되지는 않았지만, 프로세서(110)는 풀이 데이터가 오답이라고 인식하고 제1 문제의 난이도 값이 650이라고 확인한 경우, 제1 문제의 난이도 값이 최대 실력 값인 600보다 크기 때문에 단원 1(320)의 최대 실력 값을 제1 문제의 난이도 값인 650으로 변경하지 않고 유지한다고 결정할 수 있다. Meanwhile, although not shown in the drawing, when the processor 110 recognizes that the solution data is an incorrect answer and confirms that the difficulty value of the first problem is 650, the difficulty value of the first problem is greater than the maximum skill value of 600, so Unit 1 ( It may be decided to maintain the maximum skill value of 320) without changing it to 650, which is the difficulty value of the first problem.

도 2를 다시 참조하면, 프로세서(110)는 선택된 값(제1 문제와 관련된 단원의 최소 실력 값 또는 최대 실력 값)이 난이도 값으로 변경된 경우, 제1 문제와 관련된 단원과 의존 관계가 있는 의존 단원의 실력 범위를 제1 문제와 관련된 단원의 변경된 실력 범위와 동일하게 변경할 수 있다(S5). Referring again to FIG. 2, when the selected value (minimum skill value or maximum skill value of the unit related to the first problem) is changed to the difficulty value, the processor 110 selects a dependent unit that has a dependency relationship with the unit related to the first problem. The skill range of can be changed to be the same as the changed skill range of the unit related to the first problem (S5).

구체적으로, 프로세서(110)는 사용자가 제1 문제를 맞혔는지 여부에 기초하여 의존 관계가 있는 의존 단원을 정의할 수 있다. 그리고, 프로세서(110)는 제1 문제와 관련된 단원에 대한 실력 범위의 최대 실력 값 또는 최소 실력 값을 제1 문제의 난이도 값으로 변경한 경우, 제1 문제와 관련된 단원과 의존 관계가 있는 의존 단원에 대한 실력 범위의 최대 실력 값 또는 최소 실력 값을 제1 문제의 난이도 값으로 변경할 수 있다. Specifically, the processor 110 may define a dependent unit with a dependency relationship based on whether the user answered the first question correctly. And, when the processor 110 changes the maximum skill value or minimum skill value of the skill range for the unit related to the first problem to the difficulty value of the first problem, the processor 110 changes the dependent unit that has a dependency relationship with the unit related to the first problem. The maximum skill value or minimum skill value of the skill range for can be changed to the difficulty value of the first problem.

본 개시에서 제1 문제와 관련된 단원과 의존 관계가 있는 의존 단원은 사용자가 제1 문제를 맞혔는지 여부에 따라 제1 문제와 관련된 단원 보다 먼저 배우는 선수 단원 또는 제1 문제와 관련된 단원 보다 뒤에 배우는 후행 단원으로 정의될 수 있다. In the present disclosure, the dependent unit that has a dependency relationship with the unit related to the first problem is a player unit that is learned before the unit related to the first problem or a follower unit that is learned after the unit related to the first problem, depending on whether the user answered the first problem correctly. It can be defined as a unit.

일례로, 제1 문제를 사용자가 맞힌 경우 의존 단원은 문제와 관련된 단원 보다 먼저 배우는 선수 단원으로 정의될 수 있다. 여기서, 선수 단원은, 학습 과정에서 제1 문제와 관련된 단원 보다 먼저 배우는 단원이며, 사용자는 의존 단원의 내용을 사용자가 이해하고 있어야 제1 문제와 관련된 단원을 맞힐 수 있다. For example, when the user answers the first problem correctly, the dependent unit may be defined as a prerequisite unit learned before the unit related to the problem. Here, the prerequisite unit is a unit learned before the unit related to the first problem in the learning process, and the user must understand the contents of the dependent unit to correctly answer the unit related to the first problem.

다른 일례로, 제1 문제를 사용자가 틀린 경우 의존 단원은 문제와 관련된 단원보다 뒤에 배우는 후행 단원으로 정의될 수 있다. 여기서, 후행 단원은, 학습 과정에서 제1 문제와 관련된 단원 보다 뒤에 배우는 단원이며, 사용자는 제1 문제와 관련된 단원의 내용을 사용자가 이해하고 있어야 후행 단원과 관련된 문제를 맞힐 수 있다. As another example, if the user answers the first problem incorrectly, the dependent unit may be defined as a subsequent unit learned after the unit related to the problem. Here, the subsequent unit is a unit learned later than the unit related to the first problem in the learning process, and the user must understand the contents of the unit related to the first problem to answer the problem related to the subsequent unit.

본 개시에서 저장부(120)에는 복수의 단원들 사이의 선후행 관계가 저장되어 있을 수 있다. In the present disclosure, the storage unit 120 may store a precedence relationship between a plurality of units.

예를 들어, 도 5를 참조하면, 복수의 단원은 제1 단원(210), 제2 단원(220), 제3 단원(230), 제4 단원(240) 및 제5 단원(250)을 포함할 수 있다. 여기서, 제1 단원(210)은 교과 과정 상 가장 먼저 배우는 단원이고, 제2 단원(220), 제3 단원(230), 제4 단원(240) 및 제5 단원(250) 순으로 배울 수 있다. For example, referring to Figure 5, the plurality of units include a first unit 210, a second unit 220, a third unit 230, a fourth unit 240, and a fifth unit 250. can do. Here, the first unit 210 is the first unit learned in the curriculum, and can be learned in that order, the second unit 220, the third unit 230, the fourth unit 240, and the fifth unit 250. .

본 개시에서 사용자는 제1 단원(210)의 내용을 이해하고 있어야지 제2 단원(220)과 관련된 문제를 맞힐 수 있고, 제1 단원(210)의 내용을 이해하고 있어야지 제3 단원(230)과 관련된 문제를 맞힐 수 있다. 사용자는 제1 단원(210) 및 제3 단원(230)의 내용을 이해하고 있어야지 제4 단원(240)의 문제를 맞힐 수 있고 제1 단원(210), 제2 단원(220), 제3 단원(230) 및 제4 단원(240)에 대한 내용을 이해하고 있어야지 제5 단원(250)과 관련된 문제를 맞힐 수 있다. 다만, 사용자는 제2 단원(220)의 내용을 이해하지 못하고 제1 단원(210)의 내용만 이해하고 있어도 제3 단원(230)과 관련된 문제를 맞힐 수 있고, 제3 단원(230)의 내용을 이해하지 못하고 제1 단원(210)의 내용만 이해하고 있어도 제2 단원(220)과 관련된 문제를 맞힐 수 있다. 그리고, 사용자는 제2 단원(220)의 내용을 이해하지 못하고 제1 단원(210) 및 제3 단원(230)의 내용만 이해하고 있어도 제4 단원(240)과 관련된 문제를 맞힐 수 있다. In the present disclosure, the user must understand the contents of the first unit 210 to solve problems related to the second unit 220, and the user must understand the contents of the first unit 210 to answer the questions related to the third unit 230 and the third unit 230. You can answer related questions correctly. The user must understand the contents of the first unit 210 and the third unit 230 to answer the questions of the fourth unit 240, and the user must understand the contents of the first unit 210, the second unit 220, and the third unit. You must understand the contents of (230) and the fourth unit (240) to answer the questions related to the fifth unit (250). However, even if the user does not understand the contents of the second unit 220 and only understands the contents of the first unit 210, the user can answer the questions related to the third unit 230, and the contents of the third unit 230 Even if you do not understand and only understand the contents of the first unit (210), you can answer the questions related to the second unit (220). In addition, even if the user does not understand the contents of the second unit 220 and only understands the contents of the first unit 210 and the third unit 230, he or she can answer the questions related to the fourth unit 240.

이 경우, 제5 단원(250)의 선수 단원은 제1 단원(210), 제2 단원(220), 제3 단원(230) 및 제4 단원(240)이 될 수 있고, 제4 단원(240)의 선수 단원은 제1 단원(210) 및 제3 단원(230)이 될 수 있고, 제3 단원(230)의 선수 단원은 제1 단원(210)이 될 수 있고, 제2 단원(220)의 선수 단원은 제1 단원(210)이 될 수 있다. In this case, the player members of the fifth unit 250 may be the first unit 210, the second unit 220, the third unit 230, and the fourth unit 240, and the fourth unit 240 ) may be the first unit 210 and the third unit 230, and the player members of the third unit 230 may be the first unit 210, and the second unit 220 The player member may be the first member 210.

본 개시의 몇몇 실시예에 따르면, 프로세서(110)는 사용자가 풀이한 제1 문제가 제5 단원(250)과 관련된 문제이고 사용자가 제1 문제를 맞힌 경우, 제5 단원(250)에 대한 사용자의 실력 범위를 변경하는 것과 연동하여 제5 단원(250)과 의존 관계가 있는 의존 단원(선수 단원)인 제1 단원(210), 제2 단원(220), 제3 단원(230) 및 제4 단원(240)에 대한 사용자의 실력 범위도 변경할 수 있다. 다만, 프로세서(110)는 사용자가 풀이한 제1 문제가 제5 단원(250)과 관련된 문제이고 사용자가 제1 문제를 틀린 경우, 제5 단원(250)과 의존 관계가 있는 의존 단원(후행 단원)은 존재하지 않는다고 인식할 수 있다. According to some embodiments of the present disclosure, if the first problem solved by the user is a problem related to the fifth unit 250 and the user answers the first problem correctly, the processor 110 determines the user's response to the fifth unit 250. The first unit 210, the second unit 220, the third unit 230, and the fourth unit are dependent units (player units) that have a dependency relationship with the fifth unit 250 in conjunction with changing the skill range. The user's skill range for unit 240 can also be changed. However, if the first problem solved by the user is a problem related to the fifth unit 250 and the user answers the first problem incorrectly, the processor 110 determines the dependent unit (subsequent unit) that has a dependency relationship with the fifth unit 250. ) can be recognized as not existing.

본 개시의 다른 몇몇 실시예에 따르면, 프로세서(110)는 사용자가 풀이한 제1 문제가 제4 단원(240)과 관련된 문제이고 사용자가 제1 문제를 맞힌 경우, 제4 단원(240)에 대한 사용자의 실력 범위를 변경하는 것과 연동하여 제4 단원(240)과 의존 관계가 있는 의존 단원(선수 단원)인 제1 단원(210) 및 제3 단원(230)에 대한 사용자의 실력 범위도 변경할 수 있다. 다만, 프로세서(110)는 사용자가 풀이한 제1 문제가 제4 단원(240)과 관련된 문제이고 사용자가 제1 문제를 틀린 경우, 제4 단원(240)에 대한 사용자의 실력 범위를 변경하는 것과 연동하여 제4 단원(240)과 의존 관계가 있는 의존 단원(후행 단원)인 제5 단원(250)에 대한 사용자의 실력 범위도 변경할 수 있다. According to some other embodiments of the present disclosure, if the first problem solved by the user is a problem related to the fourth unit 240 and the user answers the first problem correctly, the processor 110 provides information about the fourth unit 240. In conjunction with changing the user's skill range, the user's skill range for the first unit 210 and the third unit 230, which are dependent units (player units) that have a dependency relationship with the fourth unit 240, can also be changed. there is. However, if the first problem solved by the user is a problem related to the fourth unit 240 and the user answers the first problem incorrectly, the processor 110 changes the user's skill range for the fourth unit 240 and By linking, the user's skill range for the fifth unit 250, which is a dependent unit (successor unit) that has a dependency relationship with the fourth unit 240, can also be changed.

본 개시의 또 다른 몇몇 실시예에 따르면, 프로세서(110)는 사용자가 풀이한 제1 문제가 제3 단원(230)과 관련된 문제이고 사용자가 제1 문제를 맞힌 경우, 제3 단원(230)에 대한 사용자의 실력 범위를 변경하는 것과 연동하여 제3 단원(230)과 의존 관계가 있는 의존 단원(선수 단원)인 제1 단원(210)에 대한 사용자의 실력 범위도 변경할 수 있다. 다만, 프로세서(110)는 사용자가 풀이한 제1 문제가 제3 단원(230)과 관련된 문제이고 사용자가 제1 문제를 틀린 경우, 제3 단원(230)에 대한 사용자의 실력 범위를 변경하는 것과 연동하여 제3 단원(230)과 의존 관계가 있는 의존 단원(후행 단원)인 제4 단원(240) 및 제5 단원(250)에 대한 사용자의 실력 범위도 변경할 수 있다. According to some other embodiments of the present disclosure, if the first problem solved by the user is a problem related to the third unit 230 and the user answers the first problem correctly, the processor 110 In conjunction with changing the user's skill range, the user's skill range for the first unit 210, which is a dependent unit (player unit) that has a dependency relationship with the third unit 230, can also be changed. However, if the first problem solved by the user is a problem related to the third unit 230 and the user answers the first problem incorrectly, the processor 110 changes the user's skill range for the third unit 230 and By linking, the user's skill range for the fourth unit 240 and the fifth unit 250, which are dependent units (subsequent units) that have a dependency relationship with the third unit 230, can also be changed.

본 개시의 또 다른 몇몇 실시예에 따르면, 프로세서(110)는 사용자가 풀이한 제1 문제가 제2 단원(220)과 관련된 문제이고 사용자가 제1 문제를 맞힌 경우, 제2 단원(220)에 대한 사용자의 실력 범위를 변경하는 것과 연동하여 제2 단원(220)과 의존 관계가 있는 의존 단원인 제1 단원(210)에 대한 사용자의 실력 범위도 변경할 수 있다. 다만, 프로세서(110)는 사용자가 풀이한 제1 문제가 제2 단원(220)과 관련된 문제이고 사용자가 제1 문제를 틀린 경우, 제2 단원(220)에 대한 사용자의 실력 범위를 변경하는 것과 연동하여 제2 단원(220)과 의존 관계가 있는 의존 단원(후행 단원)인 제5 단원(250)에 대한 사용자의 실력 범위도 변경할 수 있다.According to some other embodiments of the present disclosure, if the first problem solved by the user is a problem related to the second unit 220 and the user answers the first problem correctly, the processor 110 In conjunction with changing the user's skill range, the user's skill range for the first unit 210, which is a dependent unit that has a dependency relationship with the second unit 220, can also be changed. However, if the first problem solved by the user is a problem related to the second unit 220 and the user answers the first problem incorrectly, the processor 110 changes the user's skill range for the second unit 220 and By linking, the user's skill range for the fifth unit 250, which is a dependent unit (successor unit) that has a dependency relationship with the second unit 220, can also be changed.

본 개시의 또 다른 몇몇 실시예에 따르면, 프로세서(110)는 사용자가 풀이한 제1 문제가 제1 단원(210)과 관련된 문제이고 사용자가 제1 문제를 맞힌 경우, 제1 단원(210)과 의존 관계가 있는 의존 단원이 존재하지 않는다고 인식할 수 있다. 다만, 프로세서(110)는 사용자가 풀이한 제1 문제가 제1 단원(210)과 관련된 문제이고 사용자가 제1 문제를 틀린 경우, 제1 단원(210)에 대한 사용자의 실력 범위를 변경하는 것과 연동하여 제1 단원(210)과 의존 관계가 있는 의존 단원(후행 단원)인 제2 단원(220), 제3 단원(230), 제4 단원(240) 및 제5 단원(250)에 대한 사용자의 실력 범위도 변경할 수 있다. According to some other embodiments of the present disclosure, if the first problem solved by the user is a problem related to the first unit 210 and the user answers the first problem correctly, the processor 110 determines the first unit 210 and the first unit 210. It can be recognized that a dependent unit with a dependency relationship does not exist. However, if the first problem solved by the user is a problem related to the first unit 210 and the user answers the first problem incorrectly, the processor 110 changes the user's skill range for the first unit 210 and Users for the second unit 220, third unit 230, fourth unit 240, and fifth unit 250 are dependent units (subsequent units) that are linked and have a dependency relationship with the first unit 210. The skill range can also be changed.

한편, 본 개시의 몇몇 실시예에 따르면, 프로세서(110)는 사용자가 문제를 맞힌 경우 의존 단원(선수 단원)의 실력 범위를 구성하는 최소 실력 값이 제1 문제와 관련된 단원의 변경된 실력 범위를 구성하는 변경된 최소 실력 값보다 큰 경우에는 제1 문제와 관련된 단원의 실력 범위를 구성하는 최소 실력 값이 변경되었다고 하더라도 의존 단원의 실력 범위를 구성하는 최소 실력 값을 변경하지 않을 수 있다. 또한, 프로세서(110)는 사용자가 문제를 틀린 경우 의존 단원(후행 단원)의 실력 범위를 구성하는 최대 실력 값이 제1 문제의 변경된 실력 범위를 구성하는 변경된 최대 실력 값보다 작은 경우에는 제1 문제와 관련된 단원의 실력 범위를 구성하는 최대 실력 값이 변경되었다고 하더라도 의존 단원의 실력 범위를 구성하는 최대 실력 값을 변경하지 않을 수 있다. Meanwhile, according to some embodiments of the present disclosure, the processor 110 determines that when the user answers a problem correctly, the minimum skill value constituting the skill range of the dependent unit (player unit) constitutes the changed skill range of the unit related to the first problem. If it is greater than the changed minimum skill value, the minimum skill value constituting the skill range of the dependent unit may not be changed even if the minimum skill value constituting the skill range of the unit related to the first problem is changed. In addition, if the user gets the problem wrong and the maximum skill value constituting the skill range of the dependent unit (following unit) is smaller than the changed maximum skill value constituting the changed skill range of the first problem, the processor 110 Even if the maximum skill value constituting the skill range of the unit related to is changed, the maximum skill value constituting the skill range of the dependent unit may not be changed.

한편, 본 개시의 몇몇 실시예에 따르면, 사용자의 문제 풀이 실력을 진단하기 위한 문제를 사용자에게 제공할 때, 프로세서(110)는 저장부에 저장된 복수의 문제 각각을 사용자가 맞힐 확률 값을 산출할 수 있다. 상기 확률 값을 산출하는 방법은 도 7 내지 도 9을 참조하여 좀더 자세히 설명한다. Meanwhile, according to some embodiments of the present disclosure, when providing the user with a problem for diagnosing the user's problem-solving skills, the processor 110 calculates a probability value of the user correcting each of the plurality of problems stored in the storage unit. You can. The method of calculating the probability value will be described in more detail with reference to FIGS. 7 to 9.

도 7은 본 개시의 몇몇 실시예에 따라 하나 이상의 단원과 관련된 문제를 맞힐 확률 값을 산출하는 방법의 일례를 설명하기 위한 흐름도이다. 도 8은 본 개시의 몇몇 실시예에 따라 문제를 맞힐 확률 값을 산출할 때 사용되는 수학식의 일례를 설명하기 위한 도면이다. 도 9는 본 개시의 몇몇 실시예에 따라 문제가 기 설정된 기관에서 출제한 문제인 경우 난이도 값을 산출하는 수학식의 일례를 설명하기 위한 도면이다. 도 7 내지 도 9와 관련하여 도 1 내지 도6과 관련하여 상술한 내용은 다시 설명하지 않고, 이하 차이점을 중심으로 설명한다. FIG. 7 is a flowchart illustrating an example of a method for calculating a probability value of correcting a problem related to one or more units according to some embodiments of the present disclosure. FIG. 8 is a diagram illustrating an example of a mathematical equation used when calculating a probability value of correcting a problem according to some embodiments of the present disclosure. FIG. 9 is a diagram illustrating an example of a mathematical equation for calculating a difficulty value when the problem is a question asked by a preset institution according to some embodiments of the present disclosure. The content described above with respect to FIGS. 1 to 6 in relation to FIGS. 7 to 9 will not be described again, and will be described below focusing on differences.

도 7을 참조하면, 프로세서(110)는 복수의 문제 각각에 대한 기대 값을 산출할 때 현재 기대 값을 산출하고자 하는 제2 문제와 관련된 제1 단원이 복수 개인지를 확인할 수 있다(S111). 다만, 이에 한정되는 것은 아니고, 프로세서(110)는 문제와 관련된 단원이 한 개인지를 확인할 수도 있다. Referring to FIG. 7, when calculating the expected value for each of a plurality of problems, the processor 110 may check whether there are a plurality of first units related to the second problem for which the current expected value is to be calculated (S111). However, the problem is not limited to this, and the processor 110 may check whether there is only one unit related to the problem.

프로세서(110)는 현재 기대 값을 산출하고자 하는 제2 문제와 관련된 제1 단원의 개수에 기초하여 제2 문제를 맞힐 확률 값을 산출하는 방법들 중 하나를 선택하고, 선택된 방법에 의해 사용자가 제2 문제를 맞힐 확률 값을 결정할 수 있다. 여기서, 확률 값을 산출하는 방법들은 기대 값을 산출할 제2 문제와 관련된 제1 단원이 한 개인 경우 선택되는 제1 방법 및 기대 값을 산출할 제2 문제와 관련된 제1 단원이 복수 개인 경우 선택되는 제2 방법을 포함할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. The processor 110 selects one of the methods for calculating the probability value of correcting the second problem based on the number of first units related to the second problem for which the current expected value is to be calculated, and allows the user to calculate the probability value of correcting the second problem by the selected method. 2 You can determine the probability of getting the question correct. Here, the methods for calculating the probability value are a first method selected when there is only one first unit related to the second problem to calculate the expected value, and a first method selected when there are multiple first units related to the second problem to calculate the expected value. A second method may be included. However, the present disclosure is not limited to this.

구체적으로, 프로세서(110)는 제2 문제와 관련된 제1 단원이 복수 개가 아니라고 확인한 경우(S111, No), 제1 방법에 기초하여 기대 값을 산출할 문제를 맞힐 확률 값을 산출할 수 있다. 제1 방법은 이하 좀더 자세히 설명한다.Specifically, when the processor 110 determines that there are not multiple first units related to the second problem (S111, No), the processor 110 may calculate the probability value of correcting the problem for calculating the expected value based on the first method. The first method is described in more detail below.

프로세서(110)는 기대 값을 산출할 문제와 관련된 단원이 한 개라고 확인했기 때문에, 저장부(120)에 저장된 사용자의 한 개의 단원에 대한 실력 범위에 기초하여 평균 실력 값을 산출할 수 있다. 여기서, 사용자는 문제 풀이 실력을 진단하는 사용자(예를 들어, 고등학생, 중학생, 초등학생 등)로 장치(100)의 통신부(130)와 통신이 연결된 사용자 단말기의 사용자를 의미할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. Since the processor 110 has confirmed that there is one unit related to the problem for which the expected value is to be calculated, the average skill value can be calculated based on the user's skill range for one unit stored in the storage unit 120. Here, the user may refer to a user (e.g., high school student, middle school student, elementary school student, etc.) who diagnoses problem-solving skills and may refer to a user of a user terminal connected to communication with the communication unit 130 of the device 100. However, the present disclosure is not limited to this.

본 개시에서 사용자의 단원에 대한 실력 범위는 초기에는 기 설정된 초기 실력 범위를 갖도록 초기화되어 저장부(120)에 사전 저장되어 있을 수 있고, 사용자가 문제 풀이 실력 진단을 위한 문제를 풀 때마다 업데이트될 수 있다. 따라서, 사용자가 문제를 맞힐 확률 값을 산출할 때마다 프로세서(110)는 저장부(120)에 저장된 사용자의 해당 단원에 대한 실력 범위를 확인해야 한다. 다만, 본 개시는 이에 한정되는 것은 아니다. In the present disclosure, the user's skill range for a unit may be initially initialized to have a preset initial skill range and pre-stored in the storage unit 120, and may be updated each time the user solves a problem for diagnosing problem-solving skill. You can. Therefore, each time the user calculates the probability value of answering a question correctly, the processor 110 must check the user's skill range for the corresponding unit stored in the storage unit 120. However, the present disclosure is not limited to this.

본 개시에서 실력 범위는 사용자의 기대 값을 산출할 제2 문제와 관련된 제1 단원에 대한 실력 범위를 의미하며, 최소 실력 값 및 최대 실력 값으로 구성될 수 있다. 구체적으로, 제2 문제와 관련된 제1 단원에 대한 실력 범위는 최소 실력 값보다 크거나 같고 최대 실력 값보다 작거나 같은 범위를 가질 수 있다. In the present disclosure, the skill range refers to the skill range for the first unit related to the second problem for calculating the user's expected value, and may be composed of a minimum skill value and a maximum skill value. Specifically, the skill range for the first unit related to the second problem may be greater than or equal to the minimum skill value and less than or equal to the maximum skill value.

본 개시에서 프로세서(110)는 기대 값을 산출할 제2 문제와 관련된 제1 단원의 실력 범위를 구성하는 최소 실력 값 및 최대 실력 값의 평균을 구해서 제1 평균 실력 값을 산출할 수 있다(S121). 예를 들어, 제1 최소 실력 값이 100이고 제1 최대 실력 값이 600인 경우, 해당 단원의 제1 평균 실력 값은 350일 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. In the present disclosure, the processor 110 may calculate the first average skill value by calculating the average of the minimum skill value and maximum skill value constituting the skill range of the first unit related to the second problem for which the expected value is to be calculated (S121 ). For example, if the first minimum skill value is 100 and the first maximum skill value is 600, the first average skill value of the unit may be 350. However, the present disclosure is not limited to this.

도 7을 다시 참조하면, 프로세서(110)는 단계(S121)에서 산출된 제1 평균 실력 값 및 제2 문제에 할당된 난이도 값을 이용하여 한 개의 제1 단원과 관련된 문제를 맞힐 확률 값을 산출할 수 있다(S122). 여기서, 제2 문제는 저장부(120)에 저장된 복수의 문제 중 기대 값 산출을 위해 확률 값을 계산하는 문제를 의미할 수 있으며, 이하 설명의 편의를 위해 제2 문제를 문제와 구분하지 않고 설명한다. Referring again to FIG. 7, the processor 110 calculates a probability value of correcting a problem related to one first unit using the first average skill value calculated in step S121 and the difficulty value assigned to the second problem. You can do it (S122). Here, the second problem may mean a problem of calculating a probability value to calculate an expected value among a plurality of problems stored in the storage unit 120. For convenience of explanation, the second problem will be described below without distinguishing it from the problem. do.

구체적으로, 프로세서(110)는 사용자의 문제와 관련된 단원에 대한 제1 평균 실력 값과 문제에 할당된 난이도 값을 한 개의 단원과 관련된 문제를 맞힐 확률 값을 산출하는 수학식에 대입하여 한 개의 단원과 관련된 문제를 맞힐 확률 값을 산출할 수 있다. 한 개의 단원과 관련된 문제를 맞힐 확률 값을 산출하는 수학식은 도 8을 참조하여 좀더 자세히 설명한다. Specifically, the processor 110 substitutes the first average skill value for the unit related to the user's problem and the difficulty value assigned to the problem into a mathematical equation that calculates the probability value of correcting the problem related to one unit to determine one unit. You can calculate the probability of correcting a problem related to . The equation for calculating the probability of correcting a problem related to one unit is explained in more detail with reference to FIG. 8.

도 8에서 는 문제를 맞힐 확률 값이고, 는 한 개의 단원과 관련된 문제의 난이도 오차를 최소화하도록 보정하는 기 설정된 제1 파라미터 값이고, 는 한 개의 단원과 관련된 문제를 사용자가 찍어서 맞힐 확률을 보정하도록 문제 타입에 따라 값이 변화하는 제2 파라미터 값이고, 는 한 개의 단원과 관련된 문제에 할당된 난이도 값이고, 은 사용자의 문제와 관련된 단원에 대한 제1 평균 실력 값이고, 는 기 설정된 상수 값일 수 있다. In Figure 8 is the probability of getting the question correct, is a preset first parameter value that is corrected to minimize the difficulty error of problems related to one unit, is a second parameter value whose value changes depending on the problem type to correct the probability of the user guessing a problem related to one unit and correcting it, is the difficulty value assigned to a problem related to one unit, is the first average skill value for the unit related to the user's problem, may be a preset constant value.

도 8의 수학식은 엘로 평점 시스템(elo rating system)의 내용을 일부 차용하였다. 다만, 엘로 평점 시스템에서 사용되는 수학식을 그대로 사용하는 것은 아니고, 한 개의 단원과 관련된 문제를 사용자가 맞힐 확률 값을 정확하게 산출할 수 있도록 엘로 평점 시스템에서 사용되는 수학식을 변경하였다.The mathematical equation in FIG. 8 borrows some of the contents of the elo rating system. However, rather than using the same mathematical formula used in the Elo rating system, the mathematical formula used in the Elo rating system was changed so that the probability value of a user correcting a problem related to one unit can be accurately calculated.

먼저, 문제 난이도를 설정할 때 발생할 수 있는 난이도 오차를 최소화하기 위해 기 설정된 제1 파라미터 값인 항이 추가되었다. 의 역할은 사용자의 문제와 관련된 단원에 대한 실력과 문제 난이도가 같은 값인 경우 문제 풀이 방법을 알 확률이 어떻게 될지를 정의하는 값이며, 가 도 8의 수학식에 추가된 이유는 문제 난이도 할당을 보다 직관적으로 수행하기 위함이다. 사용자의 문제와 관련된 단원에 대한 실력과 문제의 난이도가 같을 때 문제 풀이 방법을 알 확률이 75%가 될 수 있도록 일 수 있다. 인 경우, 보다 정확하게 한 개의 단원과 관련된 문제를 사용자가 맞힐 확률 값을 산출할 수 있다. 예를 들어, 난이도 설정자가 문제의 난이도를 설정할 때 1등급 학생이 50% 정도 맞힐 확률을 가진 문제를 100으로 라벨링하는 것보다 75% 정도 맞힐 확률을 가진 문제에 100을 라벨링하라고 하는 것이 난이도 설정자 간의 난이도 오차를 훨씬 줄일 수 있기 때문에 제1 파라미터 값이 항에 추가되었다.First, in order to minimize difficulty errors that may occur when setting the problem difficulty level, the preset first parameter value is A clause has been added. The role of is a value that defines the probability of knowing how to solve the problem if the user's skill in the unit related to the problem and the problem difficulty are the same value, The reason why is added to the equation in FIG. 8 is to perform problem difficulty assignment more intuitively. When the difficulty of the problem is the same as the user's skill in the unit related to the problem, the probability of knowing how to solve the problem is 75%. Is It can be. go In this case, the probability value of the user correcting the problem related to one unit can be calculated more accurately. For example, when a difficulty setter sets the difficulty of a problem, it is better to label a problem with a 75% chance of getting it right as 100 rather than labeling a question with a 50% chance of getting it right as 100. Because the difficulty error can be greatly reduced, the first parameter value is added to the section.

는 사용자가 한 개의 단원과 관련된 문제를 풀 때 풀이 방법을 모르지만 맞힐 확률, 즉 문제를 찍어서 맞힐 확률을 보정해주는 파라미터이다. 엘로 평점 시스템에서 사용자 간에 이길 확률은 본 개시에서 사용자가 주관식 문제를 맞힐 확률과 동일하다고 생각할 수 있다. 다만, 엘로 평점 시스템에서 사용자끼리 시합하는 경우와 다르게 오지선다형 객관식 문제를 풀 때 그 문제에 대한 단원을 전혀 공부한 바가 없어 문제의 풀이 방법을 전혀 몰라도 문제를 최소한 맞힐 확률 20%는 보장될 수 있다. 따라서, 본 개시의 한 개의 단원과 관련된 문제를 사용자가 맞힐 확률 값을 산출하는 수학식에서는 문제를 맞힐 확률과 문제 풀이 방법을 알고 있을 확률을 구분하여 생각해야한다. is a parameter that corrects the probability of a user solving a problem related to one unit without knowing how to solve it, that is, the probability of guessing the problem correctly. The probability of winning between users in the Elo rating system can be considered to be the same as the probability of a user guessing a subjective question correctly in this disclosure. However, unlike when users compete against each other in the Elo rating system, when solving a multiple-choice question, you can be guaranteed at least a 20% chance of getting the question correct even if you have no idea how to solve the question because you have never studied the section on the question. . Therefore, in the mathematical equation that calculates the probability value of a user correcting a problem related to one unit of the present disclosure, the probability of correcting the problem and the probability of knowing how to solve the problem must be considered separately.

Law of total probability에 근거하여 문제 풀이 방법을 알고 있을 확률에서 문제를 맞힐 확률을 구할 수 있다. Based on the law of total probability, the probability of getting the problem correct can be calculated from the probability of knowing how to solve the problem.

먼저, 문제 풀이 방법을 알고 있을 확률은 하기 수학식 2로 표현될 수 있다. First, the probability of knowing how to solve a problem can be expressed as Equation 2 below.

한편, 문제를 맞힐 확률을 P(A), 문제 풀이 방법을 알고 있을 확률을 P(B)라고 정의한 경우, P(A)는 하기 수학식 3으로 표현될 수 있다. Meanwhile, if the probability of getting the problem correct is defined as P(A) and the probability of knowing how to solve the problem is defined as P(B), P(A) can be expressed as Equation 3 below.

그리고, 수학식 3은 하기 수학식 4로 표현될 수 있다. And, Equation 3 can be expressed as Equation 4 below.

수학식 4에서 는 문제의 풀이 방법을 알고 있을 때 맞힐 확률로 1이고, 는 문제의 풀이 방법을 모를 때 맞힐 확률로 찍어서 맞힐 확률 즉, 가 될 수 있다. 따라서 수학식 4는 하기 수학식 5와 같이 표현될 수 있다. In equation 4: is the probability of getting it right when you know how to solve the problem, which is 1, is the probability of getting it right when you don't know how to solve the problem. It can be. Therefore, Equation 4 can be expressed as Equation 5 below.

그리고, 수학식 5는 하기 수학식 6과 같이 표현될 수 있다. And, Equation 5 can be expressed as Equation 6 below.

그리고, 수학식 6에서 P(B)에 문제 풀이 방법을 알고 있을 확률과 관련된 수학식 2을 대입하면 문제를 맞힐 확률 값을 산출하는 수학식을 얻어낼 수 있다. Also, by substituting Equation 2, which is related to the probability of knowing how to solve the problem, into P(B) in Equation 6, an equation that calculates the probability of solving the problem correctly can be obtained.

그리고, 수학식 2에 가 존재하지만, 이는 문제의 난이도 편차를 의미하고 복수의 문제 각각은 기 설정된 난이도 값이 부여되므로 난이도 편차가 존재하지 않기 때문에 는 0 이다. 따라서, 수학식 6에 수학식 2를 대입한 후 획득된 수학식에서 항은 이 될 수 있다. And, in Equation 2 exists, but this means a deviation in the difficulty of the problem, and since each of the plurality of problems is given a preset difficulty value, there is no difficulty deviation. is 0. Therefore, in the equation obtained after substituting equation 2 into equation 6, Hang is This can be.

따라서, 최종적으로 도 8의 수학식이 도출될 수 있다. Accordingly, the mathematical equation of FIG. 8 can finally be derived.

한편, 는 한 개의 단원과 관련된 문제를 사용자가 찍어서 맞힐 확률을 보정할 수 있다. 구체적으로, 문제 타입에 따라 제2 파라미터 값인 의 값이 변경될 수 있다. 여기서, 문제 타입은 객관식 문제를 나타내는 제1 타입 및 주관식 문제를 나타내는 제2 타입을 포함할 수 있다. Meanwhile, can correct the probability of a user answering a question related to one unit correctly. Specifically, depending on the problem type, the second parameter value The value of can be changed. Here, the problem type may include a first type representing a multiple-choice question and a second type representing a subjective question.

일례로, 문제 타입이 제2 타입(주관식 문제)인 경우, 문제 풀이 방법을 알고 있을 확률이 곧 문제를 맞힐 확률일 수 있다. 주관식 문제의 경우에도 문제를 찍을 확률이 존재할 수 있지만, 이는 무시해도 무방한 것은 실험적으로 확인하였다. For example, if the problem type is type 2 (subjective problem), the probability of knowing how to solve the problem may be the probability of getting the problem correct. Even in the case of subjective questions, there may be a probability of answering the question, but it has been experimentally confirmed that this can be ignored.

다른 일례로, 문제 타입이 제1 타입(객관식 문제)인 경우, 문제 풀이 방법을 알고 있을 확률에서 찍어서 맞힐 확률 20%를 고려하여 문제를 맞힐 확률을 계산할 수 있다. 오지선다형 객관식 문제의 경우 그 확률이 반드시 20%가 되지는 않지만 20%로 가정하더라도 무방한 것을 실험적으로 확인하였다. As another example, if the problem type is the first type (multiple choice problem), the probability of getting the problem correct can be calculated by considering the 20% probability of guessing correctly from the probability of knowing how to solve the problem. In the case of multiple-choice questions, the probability is not necessarily 20%, but it was experimentally confirmed that it is safe to assume 20%.

본 개시에서 주관식 문제의 경우에 풀이 방법을 알고 있을 확률이 0%이면 문제를 맞힐 확률도 0%이지만 오지선다형 객관식 문제의 경우 풀이 방법을 알고 있을 확률이 0%이더라도 문제를 맞힐 확률은 20%가 될 수 있다. 따라서, 한 개의 단원과 관련된 문제를 사용자가 찍어서 맞힐 확률을 보정하도록 문제 타입에 따라 값이 변화하는 제2 파라미터 값인 항이 도 8의 수학식에 추가되었다. In the present disclosure, in the case of a subjective question, if the probability of knowing the solution method is 0%, the probability of getting the problem correct is 0%, but in the case of a multiple-choice question, the probability of getting the problem correct is 20% even if the probability of knowing the solution method is 0%. It can be. Therefore, the second parameter value whose value changes depending on the problem type to correct the probability of the user correcting the problem related to one unit by taking a picture A term has been added to the equation in Figure 8.

도 8의 수학식에서 는 한 개의 단원과 관련된 문제에 할당된 난이도 값일 수 있다. In the equation of Figure 8 may be a difficulty value assigned to a problem related to one unit.

본 개시에서 문제에 할당된 난이도 값은 고정된 값으로, 복수의 문제가 저장부(120)에 저장될 때 복수의 문제 각각에 할당되어 복수의 문제와 같이 저장될 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. In the present disclosure, the difficulty value assigned to a problem is a fixed value, and when a plurality of problems are stored in the storage unit 120, the difficulty value may be assigned to each of the plurality of problems and stored together with the plurality of problems. However, the present disclosure is not limited to this.

본 개시에서 문제가 자체 제작된 문제인 경우 문제에 할당되는 난이도 값을 산출하는 방법은 문제가 기 설정된 기관에서 출제한 문제인 경우 문제에 할당되는 난이도 값을 산출하는 방법과 상이할 수 있다. In the present disclosure, when the problem is a self-produced problem, the method of calculating the difficulty value assigned to the problem may be different from the method of calculating the difficulty value assigned to the problem when the problem is a question from a pre-set organization.

일례로, 난이도 값은 문제가 기 설정된 기관에서 출제한 문제인 경우 기 설정된 기관의 서버로부터 제공된 데이터 셋을 분석하여 산출된 값일 수 있다. 여기서, 기 설정된 서버는 교육 플랫폼 서버를 의미할 수 있고, 데이터 셋은 상기 문제에 대해 복수의 학생들이 정답을 맞힌 정도를 나타내는 정답률에 대한 정보를 포함할 수 있다. For example, if the problem is a question from a pre-set institution, the difficulty value may be a value calculated by analyzing a data set provided from the server of the pre-set institution. Here, the preset server may mean an education platform server, and the data set may include information on the correct answer rate indicating the degree to which a plurality of students answered correctly to the problem.

다른 일례로, 난이도 값은 문제가 자체 제작 문제인 경우, 기 설정된 수(예를 들어, 3명)의 난이도 설정자로부터 입력 받은 난이도 값의 평균을 계산하여 산출된 값일 수 있다. 여기서, 난이도 값은 복수의 난이도 설정자들이 입력하는 값이기 때문에 난이도 설정자들마다 난이도 값의 편차가 존재할 수 있다. 따라서, 난이도 설정자들은 난이도 설정 가이드에 기초하여 난이도 값을 입력해야 하고, 프로세서(110)는 난이도 설정자들이 입력한 난이도 값의 평균을 계산하여 해당 문제의 난이도 값을 산출할 수 있다. As another example, if the problem is a self-produced problem, the difficulty value may be a value calculated by calculating the average of the difficulty values input from a preset number (for example, 3) of difficulty setters. Here, since the difficulty value is a value input by a plurality of difficulty setters, there may be differences in the difficulty value for each difficulty setter. Therefore, the difficulty setters must input the difficulty value based on the difficulty setting guide, and the processor 110 can calculate the difficulty value of the corresponding problem by calculating the average of the difficulty values input by the difficulty setters.

본 개시에서 문제가 기 설정된 기관에서 출제한 문제인 경우 난이도 값을 산출하는 방법은 도 9를 참조하여 좀더 자세히 설명한다. In the present disclosure, when the problem is a question asked by a pre-set institution, the method of calculating the difficulty value will be described in more detail with reference to FIG. 9.

도 9의 수학식에서 는 문제의 정답률을 의미할 수 있다. 여기서, 문제의 정답률은 기 설정된 서버로부터 수신한 데이터 셋에 포함되어 있을 수 있다. In the equation of Figure 9 may mean the percentage of correct answers to the problem. Here, the percentage of correct answers to the problem may be included in a data set received from a preset server.

한편, 문제를 맞힐 확률의 평균 값이 정답률이라는 것을 실험적으로 증명하였다. 구체적으로, 명의 학생이 문제를 맞힐 확률의 평균이 0.45라고 가정했을 때 프로세서(110)는 1은 45개, 0은 55개로 구성된 길이가 100인 리스트를 만들고, 리스트 내의 엘레먼트(element)를 랜덤하게 셔플한 다음 하나의 엘레먼트를 선택할 수 있다. 그리고, 프로세서(110)는 선택된 엘레먼트가 0이면 틀렸다고 간주하고 1이면 맞았다고 간주하였다. 한 문제에 대해서 10,000명 정도 샘플링을 수행하고 위 방법으로 10,000명에 대한 문제를 맞힐 확률 값과 10,000명이 문제의 정답을 맞혔는지 여부를 확인할 수 있었고, 10,000명의 문제를 맞힐 확률 값의 평균이 10,000명이 문제의 정답을 맞혔는지 여부를 통해 구한 정답률과 거의 일치하는 것을 실험적으로 증명하였다. Meanwhile, it was experimentally proven that the average value of the probability of answering a question correctly is the correct answer rate. Specifically, Assuming that the average probability of students getting the problem correct is 0.45, the processor 110 creates a list with a length of 100 consisting of 45 1s and 55 0s, randomly shuffles the elements in the list, and then randomly shuffles the elements in the list. You can select one element. Additionally, the processor 110 considered the selected element to be incorrect if it was 0, and considered it to be correct if it was 1. About 10,000 people were sampled for one problem, and using the above method, it was possible to check the probability value of 10,000 people getting the problem right and whether 10,000 people answered the problem correctly. The average of the probability values of 10,000 people getting the problem right was 10,000 people. It was experimentally proven that the percentage of correct answers obtained through whether or not the question was answered correctly was almost identical.

한편, 도 9에서 은 기 설정된 학생의 수를 의미할 수 있고, 는 문제의 난이도 오차를 최소화하도록 보정하는 기 설정된 파라미터 값일 수 있고, 는 문제를 사용자가 찍어서 맞힐 확률을 보정하도록 문제 타입에 따라 값이 변화하는 파라미터 값일 수 있고, 는 문제의 난이도 값으로 프로세서(110)에 의해 산출되어야 하는 값일 수 있고, 는 기 설정된 수의 학생 각각의 문제와 관련된 단원에 대한 실력 값일 수 있고, 는 기 설정된 상수 값일 수 있다. 여기서 기 설정된 수의 학생 각각의 문제와 관련된 단원에 대한 실력 값은 저장부(120)에 저장되어 있을 수 있다. Meanwhile, in Figure 9 may mean the preset number of students, may be a preset parameter value corrected to minimize the difficulty error of the problem, may be a parameter value whose value changes depending on the problem type to correct the probability of the user guessing the problem correctly, may be a value that must be calculated by the processor 110 as the difficulty value of the problem, may be the proficiency value for the unit related to the problem for each preset number of students, may be a preset constant value. Here, the proficiency value for the unit related to each problem of a preset number of students may be stored in the storage unit 120.

본 개시에서 일 수 있다. 는 문제가 객관식 문제인 경우 0보다 큰 값(예를 들어, 0.2)이고 문제가 주관식 문제인 경우 0일 수 있다. 는 25일 수 있다. 그리고, 은 10,000일 수 있다. 여기서, 이 10,000인 경우 오차가 0에 수렴하는 것을 실험적으로 확인한 바 은 10,000으로 설정하였다. In this disclosure Is It can be. may be a value greater than 0 (e.g., 0.2) if the question is a multiple-choice question, and may be 0 if the question is a subjective question. can be 25. and, may be 10,000. here, When this is 10,000, it has been experimentally confirmed that the error converges to 0. was set to 10,000.

본 개시에서 프로세서(110)는 문제에 대한 정답률을 확인할 수 있다. 그리고, 10,000 명의 학생의 실력 데이터가 저장부(120)에 저장되어 있기 때문에, 프로세서(110)는 10,000명의 학생 각각의 문제와 관련된 단원에 대한 실력 값을 확인할 수 있다. 그리고, 프로세서(110)는 문제에 대한 정답률과 10,000명의 학생 각각의 문제와 관련된 단원의 실력 값을 도 9의 수학식에 대입하여 문제에 대한 정답률과 10,000명의 학생이 문제를 맞힐 확률의 평균 값의 오차가 최소화되는 문제 난이도 값인 를 찾는 방법으로 문제 난이도 값을 산출할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. In the present disclosure, the processor 110 can check the percentage of correct answers to a problem. And, because the skill data of 10,000 students is stored in the storage unit 120, the processor 110 can check the skill value for the unit related to the problem for each of the 10,000 students. Then, the processor 110 substitutes the percentage correct for the problem and the skill value of the unit related to the problem for each of the 10,000 students into the mathematical equation of FIG. 9 to obtain the average value of the percentage correct for the problem and the probability of 10,000 students getting the problem correct. The problem difficulty value at which the error is minimized is The problem difficulty value can be calculated by finding . However, the present disclosure is not limited to this.

한편, 도 9에 도시된 수학식은 다음과 같은 실험 과정을 통해 도출될 수 있다. Meanwhile, the mathematical equation shown in FIG. 9 can be derived through the following experimental process.

먼저, 난이도 값을 산출하고자 하는 문제와 관련하여 문제의 단원과 관련된 학생 실력 정규분포 곡선에서 명의 학생의 실력을 샘플링한다. 그리고, 각 학생의 해당 단원에 대한 실력 값을 이용하여 문제를 맞힐 확률 값을 산출한다. 그리고, 문제를 맞힐 확률 값들의 평균 값과 문제를 맞힐 확률로 실제로 문제를 풀었을 때 나오는 문제의 정답률 사이의 차이를 비교하였다. 여기서, 이 커짐에 따라 오차가 줄어드는 것을 확인할 수 있었으며, 이 10,000이상인 경우 오차가 0에 가깝다는 것을 확인할 수 있었다. 따라서, 은 10,000으로 설정되었고, 이러한 실험 과정을 이용하여 문제의 난이도 값을 산출하는 수학식이 도출되었다. First, in relation to the problem for which you want to calculate the difficulty value, from the normal distribution curve of student skill related to the unit in question, Sample the skills of 10 students. Then, the probability of getting the problem correct is calculated using each student's skill level for the unit. In addition, the difference between the average value of the probability values of getting the problem correct and the correct answer rate of the problem when actually solving the problem with the probability of getting the problem correct was compared. here, It was confirmed that the error decreased as this increased. It was confirmed that if it was over 10,000, the error was close to 0. thus, was set to 10,000, and using this experimental process, a mathematical equation was derived to calculate the difficulty value of the problem.

결과적으로, 난이도 값은, 문제가 기 설정된 기관(예를 들어, 한국 교육 기관 평가원)에서 출제한 문제인 경우 기 설정된 서버(예를 들어, 교육 플랫폼 서버)로부터 제공된 데이터 셋을 분석하여 산출된 값일 수 있고, 문제가 자체 제작 문제인 경우 기 설정된 수의 난이도 설정자로부터 입력 받은 난이도 값의 평균을 계산하여 산출된 값일 수도 있다. As a result, the difficulty value may be a value calculated by analyzing a data set provided from a preset server (e.g., an education platform server) if the problem is a question from a preset institution (e.g., Korea Institute of Educational Evaluation). Also, if the problem is a self-produced problem, it may be a value calculated by calculating the average of the difficulty values input from a preset number of difficulty setters.

한편, 도 9의 수학식에서 은 도 7의 단계(S121)에서 산출된 사용자의 문제와 관련된 단원에 대한 제1 평균 실력 값과는 상이한 저장부(120)에 저장된 N명의 학생들 각각의 실력 값일 수 있다.Meanwhile, in the equation of Figure 9 may be the skill value of each of the N students stored in the storage unit 120, which is different from the first average skill value for the unit related to the user's problem calculated in step S121 of FIG.

도 9의 수학식에서 는 기 설정된 상수 값일 수 있다. 여기서, 는 사용자들의 실력 편차를 의미할 수 있으며 일반적으로 학생마다 고유한 값을 가질 수 있지만 본 개시에서는 상수 값으로 정의한다. 즉, 모든 학생들이 동일한 실력 편차를 가진다고 가정하고 기 설정된 실험을 통해 산출된 상수 값을 로 사용할 수 있다. In the equation of Figure 9 may be a preset constant value. here, may mean the deviation of users' skills and may generally have a unique value for each student, but in this disclosure, it is defined as a constant value. In other words, assuming that all students have the same skill deviation, the constant value calculated through a preset experiment is used. It can be used as

를 산출하는 기 설정된 실험은 복수의 를 생성한 후 여기서 가장 적절한 값을 찾는 방법으로 진행되었다. 그리고, 기 설정된 서버로부터 수신된 데이터 셋을 이용하여 실험이 진행되었다. 여기서, 데이터 셋은, 기 설정된 기관(예를 들어, 한국 교육 기관 평가원)에서 제공하는 복수의 문제, 복수의 문제 각각의 배점, 복수의 문제의 문제 타입, 복수의 문제 각각의 정답률, 복수의 문제를 풀이한 복수의 사용자들의 등급 별 원점수, 복수의 문제를 풀이한 복수의 사용자들의 등급 별 표준 점수, 복수의 문제를 풀이한 복수의 사용자들의 등급 별 누적 비율, 복수의 문제를 풀이한 복수의 사용자들의 점수의 평균 값 및 복수의 문제를 풀이한 복수의 사용자들의 점수의 표준 편차를 포함할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. The preset experiment that calculates is a plurality of After creating , we proceeded with finding the most appropriate value. Then, an experiment was conducted using data sets received from a preset server. Here, the data set includes multiple questions provided by a preset organization (e.g., Korea Institute of Educational Evaluation), points assigned to each multiple questions, problem type of the multiple questions, percent correct for each of the multiple questions, multiple questions Raw score by grade of multiple users who solved multiple problems, standard score by grade of multiple users who solved multiple problems, cumulative ratio by grade of multiple users who solved multiple problems, multiple users who solved multiple problems It may include the average value of the scores of users and the standard deviation of the scores of multiple users who solved multiple problems. However, the present disclosure is not limited to this.

먼저, 기 설정된 실험을 진행하기 위해 복수의 를 생성해야 한다. 여기서, 복수의 는 41가지 상수 값을 포함할 수 있다. 구체적으로, 복수의 는 0에서 200까지 상수 값 사이에서 값을 5씩 증가시켜 생성될 수 있다. 예를 들어, 0, 5, 10, ..., 195, 200이 41가지의 가 될 수 있다. First, in order to conduct a preset experiment, a plurality of must be created. Here, plural can contain 41 constant values. Specifically, plural can be created by increasing the value by 5 between constant values from 0 to 200. For example, 0, 5, 10, ..., 195, 200 are 41 types. It can be.

다음으로, 복수의 문제 각각에 대한 난이도 값을 복수의 를 이용하여 산출할 수 있다. 이와 관련하여 도 9를 참조하여 자세히 상술한바 자세한 설명은 생략한다. Next, the difficulty value for each of the plurality of problems is It can be calculated using . In this regard, as it was described in detail with reference to FIG. 9, detailed description will be omitted.

다음으로, 데이터 셋을 확인하여 등급 별 누적 비율을 이용하여 각 등급 별 학생들의 실력 값을 산출할 수 있다. Next, you can check the data set and calculate the skill value of students in each grade using the cumulative ratio for each grade.

다음으로, 복수의 문제 각각에 대한 난이도 값과 등급 별 학생들의 실력 값을 이용하여 등급 별 예측 원점수를 산출할 수 있다. 등급 별 예측 원점수는 수학식 7을 이용하여 산출될 수 있다. Next, the predicted raw score for each grade can be calculated using the difficulty value for each of the plurality of problems and the students' skill value for each grade. The predicted raw score for each grade can be calculated using Equation 7.

마지막으로, 수학식 7을 통해 산출된 등급 별 예측 원점수와 데이터 셋에 포함된 등급 별 원점수를 비교하여 오차를 가장 작게 발생시키는 를 복수의 에서 탐색할 수 있다. 이 경우, MSE 오차 함수를 사용하여 오차를 확인할 수 있다. Finally, by comparing the predicted raw score for each grade calculated through Equation 7 and the raw score for each grade included in the data set, plural You can explore here. In this case, the error can be checked using the MSE error function.

상술한 기 설정된 실험을 통해 본 개시에서 가장 적합한 는 25임을 확인할 수 있었다. Through the above-described preset experiments, the most suitable was confirmed to be 25.

결과적으로, 본 개시에서 는 25가 될 수 있다.As a result, in this disclosure can be 25.

본 개시에서 도 9에 도시된 수학식에 상술한 값들을 대입할 경우 한 개의 단원과 관련된 문제를 사용자가 맞힐 확률 값은 수학식 8 및 수학식 9에 의해 산출될 수 있다. 여기서, 수학식 7은 문제가 주관식 문제인 경우에 사용자가 문제를 맞힐 확률 값을 산출하는 수학식이고, 수학식 8은 문제가 객관식 문제인 경우에 사용자가 문제를 맞힐 확률 값을 산출하는 수학식일 수 있다. In the present disclosure, when substituting the above-described values into the equation shown in FIG. 9, the probability value of the user correcting the problem related to one unit can be calculated by Equation 8 and Equation 9. Here, Equation 7 is an equation that calculates the probability that the user will answer the question correctly when the problem is a subjective question, and Equation 8 is an equation that calculates the probability that the user will answer the question correctly if the question is a multiple-choice question. .

본 개시에서 프로세서(110)는 한 개의 단원과 관련된 문제가 주관식 문제인 경우, 사용자의 해당 단원에 대한 제1 평균 실력 값을 수학식 8의 에 대입하고 해당 문제의 난이도 값을 수학식 8의 에 대입하여 사용자가 문제를 맞힐 확률 값인 p 산출할 수 있다. 그리고, 프로세서(110)는 한 개의 단원과 관련된 문제가 객관식 문제인 경우, 사용자의 해당 단원에 대한 제1 평균 실력 값을 수학식 9의 에 대입하고, 해당 문제의 난이도 값을 수학식 9의 에 대입하여 사용자가 문제를 맞힐 확률 값인 p 산출할 수 있다.In the present disclosure, when the problem related to one unit is a subjective problem, the processor 110 calculates the user's first average skill value for the unit in Equation 8: Substitute into and calculate the difficulty value of the problem in Equation 8. By substituting into p , the probability value of the user getting the problem correct is calculated. It can be calculated. And, if the problem related to one unit is a multiple-choice problem, the processor 110 calculates the user's first average skill value for the unit in Equation 9: Substitute into and calculate the difficulty value of the problem in Equation 9. By substituting into p , the probability value of the user getting the problem correct is calculated. It can be calculated.

도 7을 다시 참조하면, 프로세서(110)는 문제와 관련된 단원이 복수 개라고 확인한 경우(S111, Yes), 제2 방법에 기초하여 문제를 맞힐 확률 값을 산출할 수 있다. 제2 방법에서 상술한 내용과 중복되는 내용은 자세히 설명하지 않고 이하 차이점을 제2 방법에 대해 설명한다. Referring again to FIG. 7, when the processor 110 determines that there are multiple units related to the problem (S111, Yes), the processor 110 may calculate the probability of correcting the problem based on the second method. Contents that overlap with the above-described content in the second method will not be explained in detail, and the differences will be explained below with respect to the second method.

프로세서(110)는 제2 문제와 관련된 제1 단원이 복수 개라고 확인했기 때문에, 저장부(120)에 저장된 사용자의 복수의 제1 단원에 대한 복수의 실력 범위를 확인할 수 있다. 그리고, 프로세서(110)는 복수의 제1 단원에 대한 복수의 실력 범위에 기초하여 복수의 제2 평균 실력 값을 산출할 수 있다 (S123). 여기서, 복수의 실력 범위는 복수의 제1 단원의 업데이트되기 전의 실력 범위일 수 있다. Since the processor 110 has confirmed that there are a plurality of first units related to the second problem, it is possible to check a plurality of skill ranges for the plurality of first units of the user stored in the storage unit 120. Additionally, the processor 110 may calculate a plurality of second average skill values based on a plurality of skill ranges for the plurality of first units (S123). Here, the plurality of skill ranges may be the skill ranges of the plurality of first units before they are updated.

프로세서(110)는 사용자의 제2 문제와 관련된 복수의 제1 단원에 대한 복수의 제2 평균 실력 값 및 제2 문제에 할당된 난이도 값을 이용하여 복수의 제2 평균 실력 값 각각과 관련하여 문제를 맞힐 복수의 확률 값을 산출할 수 있다(S124).The processor 110 uses the plurality of second average skill values for the plurality of first units related to the user's second problem and the difficulty value assigned to the second problem to determine a problem in relation to each of the plurality of second average skill values. Multiple probability values for guessing can be calculated (S124).

구체적으로, 프로세서(110)는 사용자의 문제와 관련된 복수의 단원에 대한 복수의 제2 평균 실력 값과 문제에 할당된 난이도 값을 문제를 맞힐 확률 값을 산출하는 수학식에 입력하여 복수의 제2 평균 실력 값 각각과 관련하여 문제를 맞힐 복수의 확률 값을 산출할 수 있다. Specifically, the processor 110 inputs a plurality of second average skill values for a plurality of units related to the user's problem and a difficulty value assigned to the problem into a mathematical equation that calculates a probability value of correcting the problem, thereby generating a plurality of second average skill values for the plurality of units related to the user's problem. In relation to each average skill value, multiple probability values of answering a question correctly can be calculated.

예를 들어, 문제가 제1 단원 및 제2 단원과 관련된 문제인 경우, 프로세서(110)는 제1 단원에 대한 제1 실력 범위 및 제2 단원에 대한 제2 실력 범위를 확인할 수 있다. 프로세서(110)는 제1 실력 범위 및 제2 실력 범위를 이용하여 제3 평균 실력 값 및 제4 평균 실력 값을 산출할 수 있다. 프로세서(110)는 저장부(120)에 저장된 상기 문제에 할당된 난이도 값을 확인할 수 있다. 그리고, 프로세서(110)는 제3 평균 실력 값 및 난이도 값을 문제를 맞힐 확률 값을 산출하는 수학식에 입력하여 제1 확률 값을 산출하고, 제4 평균 실력 값 및 난이도 값을 문제를 맞힐 확률 값을 산출하는 수학식에 입력하여 제2 확률 값을 산출할 수 있다. 여기서, 복수의 제2 평균 실력 값은 제3 평균 실력 값 및 제4 평균 실력 값을 포함할 수 있다. For example, if the problem is related to the first unit and the second unit, the processor 110 may identify a first skill range for the first unit and a second skill range for the second unit. The processor 110 may calculate a third average skill value and a fourth average skill value using the first skill range and the second skill range. The processor 110 may check the difficulty value assigned to the problem stored in the storage unit 120. Then, the processor 110 calculates the first probability value by inputting the third average skill value and the difficulty value into an equation for calculating the probability value of correcting the problem, and the fourth average skill value and difficulty value are used to calculate the probability of correcting the problem. The second probability value can be calculated by entering it into a mathematical equation that calculates the value. Here, the plurality of second average skill values may include a third average skill value and a fourth average skill value.

제2 방법에 기초하여 문제를 맞힐 확률 값을 산출하는 수학식은 도 9를 다시 참조하여 좀더 자세히 설명한다. 다만, 제1 방법과 관련하여 상술한 내용과 중복되는 내용은 자세히 설명하지 않고, 차이점을 중심으로 설명한다. The equation for calculating the probability of correcting the problem based on the second method will be described in more detail with reference to FIG. 9 again. However, the content that overlaps with the above-mentioned content in relation to the first method will not be explained in detail, but will be explained focusing on the differences.

도 9에서 은 문제와 관련된 복수의 단원 중 하나의 단원에 대한 평균 실력 값일 수 있다. 즉, 는 복수의 단원에 대한 사용자의 복수의 평균 실력 값 중 하나일 수 있다.In Figure 9 may be the average skill value for one unit among a plurality of units related to the problem. in other words, may be one of a plurality of average skill values of the user for a plurality of units.

도 9의 수학식에서 는 문제와 관련된 복수의 단원 중 하나의 단원에 대한 평균 실력 값을 이용하여 산출되는 확률 값을 의미할 수 있다. In the equation of Figure 9 may mean a probability value calculated using the average skill value for one unit among a plurality of units related to the problem.

구체적으로, 문제와 관련된 단원이 제1 단원 및 제2 단원을 포함한다고 가정하는 경우, 프로세서(110)는 제1 단원에 대한 제3 평균 실력 값 및 제2 단원에 대한 제4 평균 실력 값을 산출할 수 있다. 여기서, 가 제3 평균 실력 값인 경우 는 제3 평균 실력 값을 이용하여 산출되는 제1 확률 값일 수 있고, 가 제4 평균 실력 값인 경우 는 제4 평균 실력 값을 이용하여 산출되는 제2 확률 값일 수 있다. Specifically, if it is assumed that the units related to the problem include the first unit and the second unit, the processor 110 calculates the third average proficiency value for the first unit and the fourth average proficiency value for the second unit. can do. here, If is the third average skill value may be the first probability value calculated using the third average skill value, If is the fourth average skill value may be a second probability value calculated using the fourth average skill value.

도 9에서 는 문제의 난이도 오차를 최소화하도록 보정하는 기 설정된 제1 파라미터 값이고, 는 문제를 사용자가 찍어서 맞힐 확률을 보정하도록 문제 타입에 따라 값이 변화하는 제2 파라미터 값이고, 는 문제의 난이도 값이고 는 기 설정된 상수 값일 수 있다. 이에 대해서는 제1 방법과 관련하여 자세히 상술한 바 자세한 설명은 생략한다. In Figure 9 is a preset first parameter value that is corrected to minimize the difficulty error of the problem, is a second parameter value whose value changes depending on the problem type to correct the probability of the user guessing the problem correctly, is the difficulty value of the problem may be a preset constant value. This has been described in detail in relation to the first method, so detailed description will be omitted.

본 개시 몇몇 실시예에 따르면, 문제를 맞힐 확률을 산출하고자 하는 문제가 주관식 문제이고, 상기 주관식 문제와 관련된 단원이 제1 단원 및 제2 단원을 포함하는 경우, 프로세서(110)는 사용자의 제1 단원에 대한 제3 평균 실력 값을 제1 방법과 관련하여 상술한 수학식 8의 에 대입하고, 해당 문제의 난이도 값을 제1 방법과 관련하여 상술한 수학식 8의 대입하여 제1 단원과 관련하여 사용자가 문제를 맞힐 제1 확률 값을 산출할 수 있다. 또한 프로세서(110)는 사용자의 제2 단원에 대한 제4 평균 실력 값을 제1 방법과 관련하여 상술한 수학식 8의 에 대입하고, 해당 문제의 난이도 값을 제1 방법과 관련하여 상술한 수학식 8의 대입하여 제2 단원과 관련하여 사용자가 문제를 맞힐 제2 확률 값을 산출할 수 있다.According to some embodiments of the present disclosure, when the problem for which the probability of answering the question is to be calculated is an subjective problem, and the unit related to the subjective problem includes a first unit and a second unit, the processor 110 may determine the user's first unit. The third average skill value for the unit is calculated as Equation 8 described above in relation to the first method. Substitute into , and calculate the difficulty value of the problem in Equation 8 described above in relation to the first method. By substituting, the first probability value that the user will answer the problem correctly in relation to the first unit can be calculated. Additionally, the processor 110 calculates the fourth average skill value for the user's second unit as Equation 8 described above in relation to the first method. Substitute into and calculate the difficulty value of the problem in Equation 8 described above in relation to the first method. By substituting, a second probability value that the user will answer the problem correctly in relation to the second unit can be calculated.

본 개시 다른 몇몇 실시예에 따르면, 문제를 맞힐 확률을 산출하고자 하는 문제가 객관식 문제이고, 상기 객관식 문제와 관련된 단원이 제1 단원 및 제2 단원을 포함하는 경우, 프로세서(110)는 사용자의 제1 단원에 대한 제3 평균 실력 값을 제1 방법과 관련하여 상술한 수학식 9의 에 대입하고, 해당 문제의 난이도 값을 제1 방법과 관련하여 상술한 수학식 9의 대입하여 제1 단원과 관련하여 사용자가 문제를 맞힐 제1 확률 값을 산출할 수 있다. 또한 프로세서(110)는 사용자의 제2 단원에 대한 제4 평균 실력 값을 제1 방법과 관련하여 상술한 수학식 9의 에 대입하고, 해당 문제의 난이도 값을 제1 방법과 관련하여 상술한 수학식 9의 대입하여 제2 단원과 관련하여 사용자가 문제를 맞힐 제2 확률 값을 산출할 수 있다.According to some other embodiments of the present disclosure, when the problem for which the probability of answering the problem is to be calculated is a multiple-choice problem, and the unit related to the multiple-choice problem includes the first unit and the second unit, the processor 110 The third average skill value for unit 1 is calculated from Equation 9 described above in relation to the first method. Substitute into and calculate the difficulty value of the problem in Equation 9 described above in relation to the first method. By substituting, the first probability value that the user will answer the problem correctly in relation to the first unit can be calculated. In addition, the processor 110 calculates the fourth average skill value for the user's second unit as Equation 9 described above in relation to the first method. Substitute into and calculate the difficulty value of the problem in Equation 9 described above in relation to the first method. By substituting, a second probability value that the user will answer the problem correctly in relation to the second unit can be calculated.

한편, 본 개시에서 복수의 확률 값(예를 들어, 제1 확률 값 및 제2 확률 값)이 산출된 경우, 프로세서(110)는 복수의 확률 값(예를 들어, 제1 확률 값 및 제2 확률 값) 중 하나를 복수의 단원과 관련된 문제를 사용자가 맞힐 확률 값으로 결정할 수 있다(도 7의 S125). Meanwhile, in the present disclosure, when a plurality of probability values (e.g., a first probability value and a second probability value) are calculated, the processor 110 may calculate a plurality of probability values (e.g., a first probability value and a second probability value). One of the probability values) can be determined as the probability value of the user correcting a problem related to a plurality of units (S125 in FIG. 7).

본 개시의 몇몇 실시예에 따르면, 프로세서(110)는 복수의 확률 값 중 가장 작은 값을 갖는 확률 값을 복수의 단원과 관련된 문제를 맞힐 확률 값으로 결정할 수 있다. 다만, 이에 한정되는 것은 아니다. According to some embodiments of the present disclosure, the processor 110 may determine the probability value having the smallest value among the plurality of probability values as the probability value of correcting a problem related to a plurality of units. However, it is not limited to this.

본 개시에서 문제가 복수의 개념과 관련된 경우, 문제의 정오답 여부는 복수의 개념 중 실력이 가장 부족한 개념의 실력으로 결정되는 것이 직관에 부합하기 때문에 복수의 확률 값 중 가장 작은 값을 갖는 확률 값을 복수의 단원과 관련된 문제를 맞힐 확률 값으로 결정하는 것이 가장 적합하다. In the present disclosure, when a problem is related to a plurality of concepts, it is intuitive that whether or not an incorrect answer to the problem is determined by the skill of the concept with the least skill among the plurality of concepts is the probability value that has the smallest value among the plurality of probability values. It is most appropriate to determine the probability of correcting problems related to multiple units.

도 7 내지 도 9를 참조하여 상술한 본 발명의 실시예들 중 적어도 하나에 의하면, 사용자가 문제를 맞힐 확률 값의 정확도가 향상된다는 장점이 있다. According to at least one of the embodiments of the present invention described above with reference to FIGS. 7 to 9, there is an advantage that the accuracy of the probability value of the user correcting the problem is improved.

한편, 상술한 본 개시의 몇몇 실시예에 따르면, 사용자의 문제 풀이 실력을 빠르게 진단할 수 있다. Meanwhile, according to some embodiments of the present disclosure described above, the user's problem-solving skills can be quickly diagnosed.

본 개시에서 장치(100)는 상기 설명된 몇몇 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 몇몇 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.In the present disclosure, the device 100 is not limited to the configuration and method of some of the embodiments described above, but all or part of the embodiments are selectively combined so that various modifications can be made. It may be configured.

본 개시에서 설명되는 다양한 실시예는 예를 들어, 소프트웨어, 하드웨어 또는 이들의 조합된 것을 이용하여 컴퓨터 또는 이와 유사한 디바이스로 읽을 수 있는 기록매체 내에서 구현될 수 있다. Various embodiments described in this disclosure may be implemented, for example, in a recording medium readable by a computer or similar device using software, hardware, or a combination thereof.

하드웨어적인 구현에 의하면, 여기에 설명되는 몇몇 실시예는 ASICs(application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays, 프로세서, 제어기, 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 전기적인 유닛(unit) 중 적어도 하나를 이용하여 구현될 수 있다. 일부의 경우에 본 개시에서 설명되는 몇몇 실시예가 프로세서로 구현될 수 있다.According to hardware implementation, some embodiments described herein include application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), and field programmable gate arrays (FPGAs). , may be implemented using at least one of processors, controllers, micro-controllers, microprocessors, and other electrical units for performing functions. In some cases, as described in the present disclosure, Some embodiments may be implemented in a processor.

소프트웨어적인 구현에 의하면, 본 개시에서 설명되는 절차 및 기능과 같은 몇몇 실시예는 별도의 소프트웨어 모듈들로 구현될 수 있다. 소프트웨어 모듈들 각각은 본 개시에서 설명되는 하나 이상의 기능, 태스크 및 작동을 수행할 수 있다. 적절한 프로그램 언어로 쓰여진 소프트웨어 애플리케이션으로 소프트웨어 코드(software code)가 구현될 수 있다. 여기서, 소프트웨어 코드는, 저장부(120)에 저장되고, 프로세서(110)에 의해 실행될 수 있다. 즉, 적어도 하나의 프로그램 명령이 저장부(120)에 저장되어 있고, 적어도 하나의 프로그램 명령이 프로세서(110)에 의해 실행될 수 있다. According to software implementation, some embodiments, such as procedures and functions described in this disclosure, may be implemented as separate software modules. Each of the software modules may perform one or more functions, tasks, and operations described in this disclosure. Software code can be implemented as a software application written in an appropriate programming language. Here, the software code may be stored in the storage unit 120 and executed by the processor 110. That is, at least one program command is stored in the storage unit 120 and at least one program command can be executed by the processor 110.

본 개시의 몇몇 실시예에 따른 장치의 프로세서가 수행하는 사용자의 문제 풀이 실력을 진단하는 방법은 장치에 구비된 적어도 하나의 프로세서가 읽을 수 있는 기록매체에 적어도 하나의 프로세서가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 적어도 하나의 프로세서가 읽을 수 있는 기록매체는 적어도 하나의 프로세서에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 디바이스를 포함한다. 적어도 하나의 프로세서가 읽을 수 있는 기록 매체의 예로는 ROM(Read Only Memory), RAM(Random Access Memory), CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장 디바이스 등이 포함된다. A method of diagnosing a user's problem-solving skills performed by a processor of a device according to some embodiments of the present disclosure is implemented as code readable by at least one processor on a recording medium readable by at least one processor provided in the device. It is possible. A recording medium readable by at least one processor includes all types of recording devices storing data that can be read by at least one processor. Examples of recording media that can be read by at least one processor include Read Only Memory (ROM), Random Access Memory (RAM), CD-ROM, magnetic tape, floppy disk, and optical data storage devices.

한편, 본 개시에서 첨부된 도면을 참조하여 설명하였으나, 이는 실시예일 뿐 특정 실시예에 한정되지 아니하며, 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 변형실시가 가능한 다양한 내용도 청구범위에 따른 권리범위에 속한다. 또한, 그러한 변형실시들이 본 발명의 기술 사상으로부터 개별적으로 이해되어서는 안 된다.Meanwhile, although the present disclosure has been described with reference to the accompanying drawings, these are only examples and are not limited to specific embodiments, and various modifications that can be made by those skilled in the art in the technical field to which the invention pertains are also included in the claims. falls within the scope of rights. Additionally, such modified implementations should not be understood individually from the technical spirit of the present invention.

Claims (15)

장치의 프로세서에 의해 사용자의 문제 풀이 실력을 진단하는 방법에 있어서, 상기 방법은:
복수의 문제 중 제1 문제를 상기 사용자에게 제공하는 단계;
상기 제1 문제에 대한 풀이 데이터를 상기 사용자의 사용자 단말기로부터 수신하는 단계;
상기 풀이 데이터의 정답 여부에 기초하여 상기 제1 문제와 관련된 단원의 실력 범위를 구성하는 최소 실력 값 및 최대 실력 값 중 하나를 선택하는 단계;
상기 제1 문제의 난이도 값이 상기 최소 실력 값 및 상기 최대 실력 값 중 선택된 값보다 큰지 여부에 기초하여 상기 선택된 값을 상기 제1 문제의 난이도 값으로 변경할지 여부를 결정하는 단계; 및
상기 선택된 값이 상기 제1 문제의 난이도 값으로 변경된 경우, 상기 단원과 의존 관계가 있는 의존 단원의 실력 범위를 상기 단원의 변경된 실력 범위와 동일하게 변경하는 단계;
를 포함하는,
방법.
In the method of diagnosing a user's problem-solving skills by a processor of a device, the method includes:
providing a first problem among a plurality of problems to the user;
Receiving solution data for the first problem from the user's user terminal;
selecting one of a minimum skill value and a maximum skill value constituting a skill range of a unit related to the first problem based on whether the solution data is correct;
determining whether to change the selected value to the difficulty value of the first problem based on whether the difficulty value of the first problem is greater than a selected value among the minimum skill value and the maximum skill value; and
When the selected value is changed to the difficulty value of the first problem, changing the skill range of a dependent unit that has a dependency relationship with the unit to be the same as the changed skill range of the unit;
Including,
method.
제1항에 있어서,
상기 풀이 데이터의 정답 여부에 기초하여 상기 제1 문제와 관련된 단원의 실력 범위를 구성하는 최소 실력 값 및 최대 실력 값 중 하나를 선택하는 단계는:
상기 풀이 데이터가 정답인 경우, 상기 최소 실력 값을 선택하는 단계; 또는
상기 풀이 데이터가 오답인 경우, 상기 최대 실력 값을 선택하는 단계;
를 포함하는,
방법.
According to paragraph 1,
The step of selecting one of the minimum and maximum skill values constituting the skill range of the unit related to the first problem based on whether the solution data is correct is:
If the solution data is correct, selecting the minimum skill value; or
If the solution data is an incorrect answer, selecting the maximum skill value;
Including,
method.
제2항에 있어서,
상기 제1 문제의 난이도 값이 상기 최소 실력 값 및 상기 최대 실력 값 중 선택된 값보다 큰지 여부에 기초하여 상기 선택된 값을 상기 제1 문제의 난이도 값으로 변경할지 여부를 결정하는 단계는:
상기 선택된 값이 상기 최대 실력 값인 경우, 상기 제1 문제의 난이도 값이 상기 최대 실력 값보다 작을 때 상기 최대 실력 값을 상기 제1 문제의 난이도 값으로 변경한다고 결정하는 단계; 또는
상기 선택된 값이 상기 최소 실력 값인 경우, 상기 제1 문제의 난이도 값이 상기 최소 실력 값보다 클 때 상기 최소 실력 값을 상기 제1 문제의 난이도 값으로 변경한다고 결정하는 단계;
를 포함하는,
방법.
According to paragraph 2,
The step of determining whether to change the selected value to the difficulty value of the first problem based on whether the difficulty value of the first problem is greater than the selected value of the minimum skill value and the maximum skill value is:
When the selected value is the maximum skill value, determining to change the maximum skill value to the difficulty value of the first problem when the difficulty value of the first problem is less than the maximum skill value; or
When the selected value is the minimum skill value, determining to change the minimum skill value to the difficulty value of the first problem when the difficulty value of the first problem is greater than the minimum skill value;
Including,
method.
제1항에 있어서,
상기 복수의 문제 중 제1 문제를 상기 사용자에게 제공하는 단계는:
상기 복수의 문제 각각을 사용자에게 제공했을 때 예상되는 상기 복수의 문제와 관련된 복수의 기대 값을 산출하는 단계; 및
상기 복수의 기대 값 중 가장 작은 기대 값을 갖는 문제를 상기 제1 문제로 상기 사용자에게 제공하는 단계;
를 포함하고,
상기 복수의 기대 값 각각은,
수학식 에 의해 산출되고,
상기 는 상기 복수의 문제 중 하나인 제2 문제와 관련된 기대 값이고, 상기 c는 상기 제2 문제를 상기 사용자가 맞힐 확률 값이고, 상기 는 상기 사용자가 상기 제2 문제를 맞힐 경우 상기 제2 문제와 관련된 제1 단원과 관련된 예상되는 제1 실력 범위 및 상기 제1 단원과 의존 관계가 있는 제1 의존 단원과 관련된 예상되는 제2 실력 범위를 이용하여 산출된 제1 평균 실력 길이 값이고, 상기 는 상기 사용자가 상기 제2 문제를 틀릴 경우 상기 제1 단원과 관련된 예상되는 제3 실력 범위 및 상기 제1 의존 단원과 관련된 예상되는 제4 실력 범위를 이용하여 산출된 제2 평균 실력 길이 값인,
방법.
According to paragraph 1,
The step of providing a first problem among the plurality of problems to the user is:
calculating a plurality of expected values related to the plurality of problems expected when each of the plurality of problems is provided to a user; and
providing the user with a problem having a smallest expected value among the plurality of expected values as the first problem;
Including,
Each of the plurality of expected values is:
math equation Calculated by,
remind is an expected value related to a second problem, which is one of the plurality of problems, c is a probability value of the user correcting the second problem, and is the expected first skill range associated with the first unit related to the second problem when the user correctly guesses the second problem, and the expected second skill range associated with the first dependent unit that is dependent on the first unit. It is the first average skill length value calculated using is a second average skill length value calculated using the expected third skill range associated with the first unit and the expected fourth skill range associated with the first dependent unit when the user answers the second problem incorrectly,
method.
제4항에 있어서,
업데이트되기 전의 상기 제1 단원의 제5 실력 범위는,
제1 최소 실력 값보다 크거나 같고 제1 최대 실력 값보다 작거나 같은 범위를 갖고,
상기 제1 실력 범위는,
제2 최소 실력 값보다 크거나 같고 제1 최대 실력 값보다 작거나 같은 범위를 갖되, 상기 제2 최소 실력 값은 상기 제1 최소 실력 값이 상기 제2 문제에 할당된 난이도 값보다 큰 경우 상기 제1 최소 실력 값과 동일한 값을 갖고, 상기 제1 최소 실력 값이 상기 제2 문제에 할당된 난이도 값보다 작은 경우 상기 제2 문제에 할당된 난이도 값과 동일한 값을 갖고,
상기 제2 실력 범위는,
상기 제2 최소 실력 값보다 크거나 같고 상기 제1 최대 실력 값보다 작거나 같은 범위를 갖고,
상기 제3 실력 범위는,
상기 제1 최소 실력 값보다 크거나 같고 제2 최대 실력 값보다 작거나 같은 범위를 갖되, 상기 제2 최대 실력 값은 상기 제1 최대 실력 값이 상기 제2 문제에 할당된 난이도 값보다 작은 경우 상기 제1 최대 실력 값과 동일한 값을 갖고, 상기 제1 최대 실력 값이 상기 제2 문제에 할당된 난이도 값보다 큰 경우 상기 제2 문제에 할당된 난이도 값과 동일한 값을 갖고,
상기 제4 실력 범위는,
상기 제1 최소 실력 값보다 크거나 같고 상기 제2 최대 실력 값보다 작거나 같은 범위를 갖는,
방법.
According to clause 4,
The 5th skill range of the 1st unit before being updated is,
Has a range greater than or equal to the first minimum skill value and less than or equal to the first maximum skill value,
The first skill range is,
It has a range that is greater than or equal to the second minimum skill value and is less than or equal to the first maximum skill value, and the second minimum skill value is greater than the difficulty value assigned to the second problem. 1 has the same value as the minimum skill value, and if the first minimum skill value is less than the difficulty value assigned to the second problem, has the same value as the difficulty value assigned to the second problem,
The second skill range is,
Has a range greater than or equal to the second minimum skill value and less than or equal to the first maximum skill value,
The third skill range is,
It has a range that is greater than or equal to the first minimum skill value and is less than or equal to the second maximum skill value, and the second maximum skill value is less than the difficulty value assigned to the second problem. It has the same value as the first maximum skill value, and if the first maximum skill value is greater than the difficulty value assigned to the second problem, it has the same value as the difficulty value assigned to the second problem,
The fourth skill range is,
Having a range greater than or equal to the first minimum skill value and less than or equal to the second maximum skill value,
method.
제5항에 있어서,
상기 제1 평균 실력 길이 값은,
상기 제1 실력 범위 및 상기 제2 실력 범위 각각을 이용하여 산출된 복수의 제1 실력 길이 값 및 복수의 단원 중 상기 제1 단원 및 상기 제1 의존 단원을 제외한 적어도 하나의 나머지 단원에 대한 적어도 하나의 실력 범위를 이용하여 산출된 적어도 하나의 실력 길이 값의 평균을 구해서 산출된 값이고,
상기 제2 평균 실력 길이 값은,
상기 제3 실력 범위 및 상기 제4 실력 범위 각각을 이용하여 산출된 복수의 제2 실력 길이 값 및 상기 적어도 하나의 실력 길이 값의 평균을 구해서 산출된 값인,
방법.
According to clause 5,
The first average skill length value is,
A plurality of first skill length values calculated using each of the first skill range and the second skill range, and at least one for at least one remaining unit excluding the first unit and the first dependent unit among the plurality of units. It is a value calculated by calculating the average of at least one skill length value calculated using the skill range of,
The second average skill length value is,
A value calculated by calculating the average of a plurality of second skill length values calculated using each of the third skill range and the fourth skill range and the at least one skill length value,
method.
제6항에 있어서,
상기 복수의 제1 실력 길이 값 각각은,
상기 제1 최대 실력 값에서 상기 제2 최소 실력 값을 뺀 값이고,
상기 복수의 제2 실력 길이 값 각각은,
상기 제2 최대 실력 값에서 상기 제1 최소 실력 값을 뺀 값인,
방법.
According to clause 6,
Each of the plurality of first ability length values is,
It is a value obtained by subtracting the second minimum skill value from the first maximum skill value,
Each of the plurality of second ability length values is,
A value obtained by subtracting the first minimum skill value from the second maximum skill value,
method.
제4항에 있어서,
상기 복수의 기대 값 중 가장 작은 기대 값을 갖는 문제를 상기 제1 문제로 상기 사용자에게 제공하는 단계는:
상기 가장 작은 기대 값을 갖는 문제가 복수 개인 경우 가장 작은 기대 값을 갖는 문제들 중 랜덤하게 하나의 문제를 상기 제1 문제로 선택하여 상기 사용자에게 제공하는 단계;
를 포함하는,
방법.
According to paragraph 4,
The step of providing the problem with the smallest expected value among the plurality of expected values to the user as the first problem is:
When there are a plurality of problems with the smallest expected value, randomly selecting one problem among the problems with the smallest expected value as the first problem and providing it to the user;
Including,
method.
제4항에 있어서,
상기 방법은:
상기 사용자가 문제 풀이 실력을 최초로 진단하는 경우, 상기 복수의 기대 값을 산출하기 전에 복수의 단원 각각이 기 설정된 최소 실력 값보다 크거나 같고 기 설정된 최대 실력 값보다 작거나 같은 초기 실력 범위를 갖도록 상기 복수의 단원 각각의 실력 범위를 초기화하는 단계;
를 더 포함하는,
방법.
According to paragraph 4,
The above method is:
When the user first diagnoses the problem-solving skill, before calculating the plurality of expected values, each of the plurality of units has an initial skill range that is greater than or equal to the preset minimum skill value and less than or equal to the preset maximum skill value. Initializing the skill range of each of a plurality of units;
Containing more,
method.
제5항에 있어서,
상기 확률 값은,
상기 확률 값을 산출하는 방법들 중 상기 제2 문제와 관련된 제1 단원의 개수에 기초하여 선택된 하나의 방법에 의해 결정되고,
상기 방법들은:
상기 제2 문제와 관련된 상기 제1 단원이 한 개인 경우 선택되는 제1 방법; 및
상기 제2 문제와 관련된 상기 제1 단원이 복수 개인 경우 선택되는 상기 제1 방법과 상이한 제2 방법;
을 포함하는,
방법.
According to clause 5,
The probability value is,
Among the methods for calculating the probability value, it is determined by one method selected based on the number of first units related to the second problem,
The above methods are:
a first method selected when there is only one first unit related to the second problem; and
a second method different from the first method selected when there are a plurality of first units related to the second problem;
Including,
method.
제10항에 있어서,
상기 제1 방법은,
상기 제1 최소 실력 값 및 상기 제1 최대 실력 값을 이용하여 상기 단원에 대한 제1 평균 실력 값을 산출하는 단계; 및
상기 제2 문제에 할당된 난이도 값 및 상기 제1 평균 실력 값을 이용하여 상기 확률 값을 산출하는 단계;
를 포함하고,
상기 확률 값은,
수학식 에 의해 산출되고,
상기 는 상기 확률 값이고, 상기 는 상기 제2 문제의 난이도 오차를 최소화하도록 보정하는 기 설정된 제1 파라미터 값이고, 상기 는 상기 제2 문제를 상기 사용자가 찍어서 맞힐 확률을 보정하도록 문제 타입에 따라 값이 변화하는 제2 파라미터 값이고, 상기 는 상기 제2 문제에 할당된 난이도 값이고, 상기 은 상기 제1 평균 실력 값이고, 상기 는 기 설정된 상수 값인,
방법.
According to clause 10,
The first method is,
calculating a first average skill value for the unit using the first minimum skill value and the first maximum skill value; and
calculating the probability value using the difficulty value assigned to the second problem and the first average skill value;
Including,
The probability value is,
math equation Calculated by,
remind is the probability value, and is a preset first parameter value corrected to minimize the difficulty error of the second problem, is a second parameter value whose value changes depending on the problem type to correct the probability of the user guessing the second problem correctly, and is the difficulty value assigned to the second problem, and is the first average skill value, and is a preset constant value,
method.
제10항에 있어서,
상기 제2 방법은:
상기 제2 문제와 관련된 복수의 제1 단원의 업데이트되기 전의 실력 범위에 포함된 최소 실력 값 및 최대 실력 값을 이용하여 상기 복수의 제1 단원에 대한 복수의 제2 평균 실력 값을 산출하는 단계;
상기 제2 문제에 할당된 난이도 값 및 상기 복수의 제2 평균 실력 값을 이용하여 복수의 확률 값을 산출하는 단계; 및
상기 복수의 확률 값 중 가장 작은 값을 갖는 확률 값을 상기 제2 문제를 맞힐 상기 확률 값으로 결정하는 단계;
를 포함하고,
상기 복수의 확률 값 각각은,
수학식 에 의해 산출되고,
상기 는 상기 제2 문제의 난이도 오차를 최소화하도록 보정하는 기 설정된 제1 파라미터 값이고, 상기 는 상기 제2 문제를 상기 사용자가 찍어서 맞힐 확률을 보정하도록 문제 타입에 따라 값이 변화하는 제2 파라미터 값이고, 상기 는 상기 제2 문제에 할당된 난이도 값이고, 상기 은 상기 복수의 제1 단원 중 하나의 단원에 대한 평균 실력 값으로 상기 복수의 제2 실력 값 중 하나이고, 상기 는 상기 를 상기 수학식에 대입하여 산출된 확률 값이고, 상기 는 기 설정된 상수 값인,
방법.
According to clause 10,
The second method is:
calculating a plurality of second average skill values for the plurality of first units using the minimum skill value and maximum skill value included in the skill range before the update of the plurality of first units related to the second problem;
calculating a plurality of probability values using the difficulty value assigned to the second problem and the plurality of second average skill values; and
determining a probability value having the smallest value among the plurality of probability values as the probability value of correcting the second problem;
Including,
Each of the plurality of probability values is,
math equation Calculated by,
remind is a preset first parameter value corrected to minimize the difficulty error of the second problem, is a second parameter value whose value changes depending on the problem type to correct the probability of the user guessing the second problem correctly, and is the difficulty value assigned to the second problem, and is the average skill value for one of the plurality of first units and is one of the plurality of second skill values, above is a probability value calculated by substituting into the above equation, and is a preset constant value,
method.
제11항 또는 제12항에 있어서,
상기 문제 타입은,
객관식 문제를 나타내는 제1 타입 및 주관식 문제를 나타내는 제2 타입을 포함하고,
상기 제2 파라미터 값은,
상기 문제가 상기 제1 타입인 경우, 0보다 큰 값을 갖고,
상기 문제가 상기 제2 타입인 경우, 0인,
방법.
According to claim 11 or 12,
The problem type is,
A first type representing a multiple-choice question and a second type representing a subjective question,
The second parameter value is,
If the problem is of the first type, it has a value greater than 0,
If the problem is of the second type, 0,
method.
컴퓨터 판독가능 저장 매체 저장된 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램은 장치의 프로세서에서 실행되는 경우, 사용자의 문제 풀이 실력을 진단하는 단계들을 수행하며, 상기 단계들은:
복수의 문제 중 제1 문제를 상기 사용자에게 제공하는 단계;
상기 제1 문제에 대한 풀이 데이터를 상기 사용자의 사용자 단말기로부터 수신하는 단계;
상기 풀이 데이터의 정답 여부에 기초하여 상기 제1 문제와 관련된 단원의 실력 범위를 구성하는 최소 실력 값 및 최대 실력 값 중 하나를 선택하는 단계;
상기 제1 문제의 난이도 값이 상기 최소 실력 값 및 상기 최대 실력 값 중 선택된 값보다 큰지 여부에 기초하여 상기 선택된 값을 상기 제1 문제의 난이도 값으로 변경할지 여부를 결정하는 단계; 및
상기 선택된 값이 상기 제1 문제의 난이도 값으로 변경된 경우, 상기 단원과 의존 관계가 있는 의존 단원의 실력 범위를 상기 단원의 변경된 실력 범위와 동일하게 변경하는 단계;
를 포함하는,
컴퓨터 판독가능 저장 매체 저장된 컴퓨터 프로그램.
A computer program stored on a computer-readable storage medium, the computer program, when executed on a processor of a device, performing steps for diagnosing a user's problem-solving skills, the steps comprising:
providing a first problem among a plurality of problems to the user;
Receiving solution data for the first problem from the user's user terminal;
selecting one of a minimum skill value and a maximum skill value constituting a skill range of a unit related to the first problem based on whether the solution data is correct;
determining whether to change the selected value to the difficulty value of the first problem based on whether the difficulty value of the first problem is greater than a selected value among the minimum skill value and the maximum skill value; and
When the selected value is changed to the difficulty value of the first problem, changing the skill range of a dependent unit that has a dependency relationship with the unit to be the same as the changed skill range of the unit;
Including,
A computer program stored on a computer-readable storage medium.
사용자의 문제 풀이 실력을 진단하기 위한 문제를 제공하는 장치에 있어서, 상기 장치는:
적어도 하나의 프로그램 명령이 저장된 저장부;
상기 적어도 하나의 프로그램 명령을 수행하는 프로세서; 및
통신부;
를 포함하고,
상기 프로세서는,
복수의 문제 중 제1 문제를 상기 사용자에게 제공하고,
상기 제1 문제에 대한 풀이 데이터를 상기 통신부를 통해 상기 사용자의 사용자 단말기로부터 수신하고,
상기 풀이 데이터의 정답 여부에 기초하여 상기 제1 문제와 관련된 단원의 실력 범위를 구성하는 최소 실력 값 및 최대 실력 값 중 하나를 선택하고,
상기 제1 문제의 난이도 값이 상기 최소 실력 값 및 상기 최대 실력 값 중 선택된 값보다 큰지 여부에 기초하여 상기 선택된 값을 상기 제1 문제의 난이도 값으로 변경할지 여부를 결정하는,
장치.
In a device that provides problems for diagnosing a user's problem-solving skills, the device:
a storage unit storing at least one program command;
a processor executing the at least one program instruction; and
Ministry of Communications;
Including,
The processor,
Providing a first problem among a plurality of problems to the user,
Receiving solution data for the first problem from the user's user terminal through the communication unit,
Based on whether the solution data is correct, one of the minimum skill value and the maximum skill value constituting the skill range of the unit related to the first problem is selected,
Determining whether to change the selected value to the difficulty value of the first problem based on whether the difficulty value of the first problem is greater than the selected value of the minimum skill value and the maximum skill value,
Device.
KR1020220090050A 2022-07-21 2022-07-21 A technique for diagnosing question-solving skills of a user KR20240012720A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220090050A KR20240012720A (en) 2022-07-21 2022-07-21 A technique for diagnosing question-solving skills of a user

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220090050A KR20240012720A (en) 2022-07-21 2022-07-21 A technique for diagnosing question-solving skills of a user

Publications (1)

Publication Number Publication Date
KR20240012720A true KR20240012720A (en) 2024-01-30

Family

ID=89715167

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220090050A KR20240012720A (en) 2022-07-21 2022-07-21 A technique for diagnosing question-solving skills of a user

Country Status (1)

Country Link
KR (1) KR20240012720A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102406458B1 (en) 2021-04-01 2022-06-08 (주)뤼이드 A device, system, and its operation method that evaluates the user's ability through an artificial intelligence model learned through transfer factor applied to various test domain

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102406458B1 (en) 2021-04-01 2022-06-08 (주)뤼이드 A device, system, and its operation method that evaluates the user's ability through an artificial intelligence model learned through transfer factor applied to various test domain

Similar Documents

Publication Publication Date Title
US20190114937A1 (en) Grouping users by problematic objectives
KR102465634B1 (en) Technique for providing customized problems to improve problem solving skills of users
US10866956B2 (en) Optimizing user time and resources
US10541884B2 (en) Simulating a user score from input objectives
KR102146111B1 (en) Method for providing an information of a question analysis using big data
Shogren et al. Student and teacher perceptions of goal attainment during intervention with the Self-Determined Learning Model of Instruction
KR20240013026A (en) Technique for updating a skill of a user
KR20240012720A (en) A technique for diagnosing question-solving skills of a user
KR20240012719A (en) A technique for diagnosing question-solving skills of a user
KR20240012722A (en) A technique for diagnosing question-solving skills of a user
KR20240012099A (en) Technique for diagnosing question-solving skills of a user
KR20240012100A (en) A technique to terminate question-solving skills diagnosis of a user
KR20240012718A (en) A technique to provide questions for diagnosing question-solving skills of a user
KR20240012092A (en) Technique for diagnosing question-solving skills of a user
KR20160025248A (en) System and method of learning mathematics for evhancing meta-cognition ability
KR20240012712A (en) A technique for updating a skill of a user based on the probability of correcting a question
KR20240012714A (en) A technique for updating a skill of a user
KR20240012717A (en) Technique for updating a skill of a user who solved a question related to multiple units
KR20240012715A (en) A technique for updating a skill of a user who solved a question related to a single unit
KR20240001956A (en) A technique for calculating the probability of correcting a question related to one or more units
KR20240001954A (en) A technique for calculating the probability of correcting a question related to multiple units
KR20240001951A (en) A technique for calculating the probability of correcting a question related to a single unit
KR102619297B1 (en) System, method and program to manage learning
KR100488367B1 (en) Method and System for Providing Psychological Test Service by Using Mobile Telecommunication Network
KR102541689B1 (en) A technique to correct a correct rate of a question