Encontrar a sequência ideal de perguntas para minimizar o tempo total do aluno


13

Suponha que exista uma sessão de tutorial em uma universidade. Temos um conjunto de perguntas e um conjunto de alunos . Cada aluno tem uma dúvida em um determinado subconjunto de perguntas, ou seja, para cada aluno , seja o conjunto de perguntas que um aluno duvida. Assume-se que e .kQ={q1qk}nS={s1sn}sjQjQ1jn:Qjϕ1jnQj=Q

Todos os alunos entram na sessão do tutorial no início (em ). Agora, um aluno sai da sessão do tutorial assim que todas as perguntas em que ele tiver dúvidas tiverem sido discutidas. Suponha que o tempo necessário para discutir cada questão seja igual, digamos 1 unidade . Seja o tempo gasto por na sessão do tutorial. Queremos encontrar uma permutação ideal na qual questões são discutidas como a quantidade é minimizado.t j s j σ ( q σ ( 1 )q σ ( n ) ) T σ = Σ 1 j n t jt=0tjsjσ(qσ(1)qσ(n))Tσ=Σ1jntj

Não pude projetar um algoritmo de tempo polinomial ou provar a dureza NP .

Podemos definir uma versão de decisão do problema

TUT={k,n,FQ,Cσ:TσC}

onde FQ é o conjunto de Qj 's.

Podemos então descobrir o T_ \ sigma mínimo Tσusando pesquisa binária em C e descobrir o \ sigma ideal σusando atribuições parciais a σ em tempo polinomial usando um oracle para TUT . Além disso, TUTNP porque o \ sigma ideal σpode ser usado como um certificado que podemos verificar facilmente em tempo polinomial.

Minha pergunta: concluída ou podemos criar um algoritmo de tempo polinomial para ele?N PTUT NP

Sidenote: A propósito, pensei nessa questão após uma sessão de tutorial real, na qual o AT discutiu as questões na ordem normal por causa da qual muitos estudantes tiveram que esperar até o final.q1qn

Exemplo
Let e . e . Podemos ver que ideal porque, nesse caso, sai depois de e sai depois de , então a soma é 4. No entanto, se discutirmos as questões em a ordem , então e precisam esperar até o fim e , então a soma é 6.k=3n=2Q1={q3}Q2={q1,q2,q3}σ=3,1,2s1t1=1s2t2=3
1,2,3s1s2t1=t2=3

Q i x i Você é livre para resolver o caso mais geral em que cada pergunta leva unidades para discutir!qixi


Só para deixar claro: todos os alunos entram ao mesmo tempo ou eles entram no momento em que sua primeira pergunta é feita?
Lagarto discreto

@Discretelizard Todos os alunos entram no mesmo horário no início (em t = 0).
precisa saber é o seguinte

Na definição atual, os conjuntos de perguntas são únicos, ou seja, um conjunto de perguntas pertence a no máximo um aluno. Isso poderia ser uma simplificação razoável, mas duvido que isso seja realista (e duvido que isso faça muito pela complexidade do problema)
Lagarto discreto

Suponho que dois alunos possam ter exatamente o mesmo conjunto de perguntas, para que o tempo de espera seja multiplicado por dois.
gnasher729

Respostas:


1

Suspeito que o problema seja NP-difícil. Vou mostrar como transformar o problema de forma que ele esteja fortemente relacionado a um problema que é difícil para o NP. (Sim, tudo isso é bastante vago. Basicamente, acho que minha abordagem geral está correta, mas atualmente não consigo prosseguir.)TUT

Primeiro, observe que o problema pode ser reformulado da seguinte maneira:TUT

Dado um conjunto de perguntas de tamanho k , um conjunto de n subconjuntos F QP ( Q ) e um número inteiro C , não existe uma sequência Σ : S 1 , ... , S k de tal modo que, para todos os i { 1 , , k } :QknFQP(Q)CΣ:S1,,Ski{1,,k}

  1. e | S i | = i ; eSiQ|Si|=i
  2. para todos os j > i ; eSiSjj>i
  3. ?i=1k|{qFQqSi}|C

Observe que o conjunto representa as primeiras i perguntas que serão explicadas. As condições 1 e 2 garantem que os subconjuntos sejam bem formados de acordo com esta interpretação. A condição 3 conta a quantidade de estudantes que não saíram a todo momento, portanto, isso realmente resume o tempo total de espera entre todos os alunos.Sii

Agora, podemos restringir o tamanho dos subconjuntos em a 2 , de modo que pode representar estes subconjuntos como arestas em um gráfico onde os vértices são os elementos de Q . (Um resultado de dureza para este caso especial é suficiente para a dureza do problema geral)FQ2Q

Agora, o problema de minimizar para um único i (essa é essencialmente a condição 2 de ignorar) é equivalente ao seguinte problema, que eu chamo de ' Double max  k -vertex-cover ':|{qFQqSi}|iDouble max k-vertex-cover

Dado um gráfico não direcionado e números inteiros k e t , existe um conjunto de vértices V V de tamanho no máximo k de modo que o conjunto { ( u , v ) E u V v V } tem um tamanho de pelo menos t ?G=(V,E)ktVVk{(u,v)EuVvV}t

Esse problema é difícil para o NP, pois o -clique é um caso especial desse problema, como mostra a resposta . No entanto, isso não é suficiente para provar que T U T é NP-difícil, pois precisamos encontrar o máximo para cada i , respeitando a condição 2. Essas condições não são satisfeitas por todas as seqüências Σ que satisfazem apenas as condições 1 e 3: considere o gráfico em 7 vértices com dois ciclos disjuntos, um de tamanho 4 e outro de tamanho 3 . Para i = 3 , selecionar todos os vértices do ciclo 3 fornece o máximo, enquanto selecionar todos os vértices dos 4kTUTiΣ743i=334-ciclo é ideal para .i=4

Parece que a condição 2 torna o problema ainda mais difícil e certamente não é mais fácil, o que significa que deve ser NP-difícil, mas eu não vi um método para provar isso formalmente.TUT

Então, para resumir, reduzi a pergunta para o seguinte:

  • É possível incluir a condição 2 para concluir a prova de dureza para ?TUT

Nota lateral: A formulação que eu dei torna tentador tentar um algoritmo iterativo que encontre na condição 2 de i = 1 k , encontrando todas as 'extensões' máximas de todos os conjuntos máximos encontrados para i - 1 . Isso não leva a um algoritmo eficiente, pois a quantidade de conjuntos máximos em uma única iteração pode ser exponencial em k . Além disso, eu não vi um método para determinar se um subconjunto para alguns i|{qFQqSi}|i=1ki1ki acabaria por se tornar o máximo "global" para impedir a verificação de uma quantidade exponencial de subconjuntos.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.