Um exercício de aquecimento escolar para ocupar seu tempo

 

Não diretamente relacionado ao comércio, mas interessante. Aquecimento para o cérebro e teclado no fim de semana :-) Surgiu quando eu estava fazendo matemática com meus filhos e tentando ensinar programação.

Como você sabe, a área de um triângulo pode ser calculada pelo comprimento de seus três lados. Para um polígono, infelizmente, não é assim, mas se você der comprimentos de lados, você pode encontrar a __área máxima__ da figura com esses lados.

Note uma pergunta: como ele (área máxima de um polígono e ângulos adjacentes a seus lados) pode ser computado analiticamente e o otimizador de MT é capaz de tais truques ?

embora este seja apenas um problema curioso para a solução de software, mas pode ajudar na otimização: descubra quais parâmetros corrigir e dentro de quais limites considerar.

---

Basta comparar a área encontrada pela força bruta do otimizador (e dependerá do algoritmo e do que/ como é a força bruta) e a solução analítica, que é a única.

 

Se houver mais de três cantos, conecte todos os cantos com linhas.

têm algum número de triângulos

somar as áreas dos triângulos

qualquer linguagem de programação
 
Renat Akhtyamov:

conectar todos os ângulos com linhas. temos uma série de triângulos

somar as áreas dos triângulos

fazer as contas :-)

comprimentos laterais 1-2-3-4-5-6, qual é a área máxima de tal hexágono?

 
Maxim Kuznetsov:

fazer as contas :-)

comprimentos laterais 1-2-3-4-5-6, qual é a área máxima de tal hexágono?

Eu pesquisei no Google, há opções.

Eu só não quero me incomodar.

 
Analisticamente, através da derivada
 
Maxim Kuznetsov:

fazer as contas :-)

comprimentos laterais 1-2-3-4-5-6, qual é a área máxima de tal hexágono?

E como pode ser máximo ou mínimo ou o que quer que seja, se existe apenas uma versão deste hexágono? De que depende sua área?

Ah... um hexágono, não um triângulo)

 

Parece que você precisa inscrevê-lo em um círculo do maior raio possível.

A área pode ser calculada utilizando produto vetorial ou fórmula de Gauss.

 
Aleksey Nikolayev:

Parece que você precisa inscrevê-lo em um círculo do maior raio possível.

A área pode ser calculada utilizando produto vetorial ou fórmula de Gauss.

Algoritmicamente, nós apenas procuramos o ângulo, encontramos o limite da mudança, procuramos por ele - e depois recursivamente, escolhendo a área máxima. A precisão e a duração dependem da escolha do ângulo em cada passo.

Mas a duração total é bastante longa, para dizer de forma branda.

Se você o enfiar em algum otimizador, ele deverá convergir mais rapidamente

 
Maxim Kuznetsov:

Algoritmicamente, é uma busca simples, pegar um ângulo, identificar os limites de mudança, buscar - e depois recursivamente, selecionando a área máxima. A precisão e a duração dependem da escolha do ângulo em cada passo.

Mas a duração total é bastante longa, para dizer de forma branda.

Se você o enfiar em algum otimizador, ele deverá convergir mais rapidamente.

Se pudermos anotar a fórmula que determina a área, usaremos a derivada.

Em geral, é uma tarefa difícil. Por quê?

 
Dmitry Fedoseev:

Se você pode escrever a fórmula da qual a área depende, então através da derivada.

Para uma faceta N com comprimento fixo de lados, você também deve conhecer os ângulos entre os lados da face N-3. Então, a área da figura pode ser encontrada. Mas a área máxima possível (para: lados conhecidos, ângulos arbitrários) é a única

 
Maxim Kuznetsov:

Para um N-facet com comprimentos laterais fixos, você também precisa conhecer os ângulos entre os lados do N-3. Então, podemos encontrar a área de uma determinada figura. Mas a área máxima possível (para: lados conhecidos, ângulos arbitrários) é a única

neste caso, sim, porque temos que calcular como Alexey escreveu acima