안녕하세요 다음 문제가 있습니다. 큰 매개 변수 공간이 있습니다. 제 경우에는 10 차원과 같습니다. 그러나 단순화하기 위해 x1, x2 및 x3 변수가 있다고 가정합니다. 그들은 1에서 10까지의 이산 숫자입니다. 이제 가능한 모든 매개 변수 조합을 만들고 후 처리에 사용하려고합니다. 내 실제 경우에는 너무 많은 combinatons 있습니다. 그래서 검색 공간을 줄이기 위해 준 임의 시퀀스 검색을하고 싶습니다. 그러나 검색 공간의 조합은 가능한 한 좋은 것으로 커버해야합니다. (균일 한 배포). 검색 공간에서 클러스터에 대한 매개 변수 조합을 방지하려면 가능한 한 전체 검색 공간을 포괄해야합니다. 매개 변수 처리에서 매개 변수 조합의 기본 설정을 찾아야합니다. Haton, Hammersley 또는 Sobol 시퀀스와 같은 여러 가지 방법이 있습니다. 그러나 그들은 이산적인 숫자를 위해 일하지 않고있다. 준 임의 시퀀스를 수행하는 하나의 패키지는 혼란 스럽다. 시퀀스의 수를 반올림하면 각 변수의 변수 수가 서로 다른 변수 조합에서 두 번 이상 나타납니다. 그건 내가 원하는 것이 아니다. 나는 모든 변수가 한번만 발생하고 변수는 검색 공간에 균일하게 분포되기를 원합니다. 처음부터 모든 변수가 한 번만 나타나는 변수 조합의 무작위 다차원 세트를 만들 수 있습니까? 예를 들어, 2 차원 격자 10x10에서 가능한 조합은 대각선입니다.파이썬 : 준 임의 시퀀스에 대한 대안
import numpy as np
import chaospy as cp
#Create a Joint distributuon of the three varaibles, which ranges going from 1 to 10
distribution2 = cp.J(cp.Uniform(1, 10),cp.Uniform(1, 10),cp.Uniform(1, 10))
#Create 10 numbers in the variable space
samplesSobol = distribution2.sample(10, rule="S")
#Transpose the array to get the variable combinations in subarrays
sobolPointsTranspose = np.transpose(samplesSobol)
예 출력 :
물론 3 차원 나는는 Sobol 순서와 1-10에서 세 개의 변수를 가진 간단한 예를 가지고 있습니다, 모든 파라미터 값을 커버하는 100 개 조합을 필요
[[ 7.89886475 6.34649658 4.8336792 ]
[ 5.64886475 4.09649658 2.5836792 ]
[ 1.14886475 8.59649658 7.0836792 ]
[ 1.21917725 5.01055908 2.5133667 ]
[ 5.71917725 9.51055908 7.0133667 ]
[ 7.96917725 2.76055908 9.2633667 ]
[ 3.46917725 7.26055908 4.7633667 ]
[ 4.59417725 1.63555908 5.8883667 ]
[ 9.09417725 6.13555908 1.3883667 ]
[ 6.84417725 3.88555908 3.6383667 ]]
이제 모든 변수 번호는 고유하지만 출력은 개별적이지 않습니다. I는 반올림 얻을 수
[[ 8. 6. 5.]
[ 6. 4. 3.]
[ 1. 9. 7.]
[ 1. 5. 3.]
[ 6. 10. 7.]
[ 8. 3. 9.]
[ 3. 7. 5.]
[ 5. 2. 6.]
[ 9. 6. 1.]
[ 7. 4. 4.]]
이제 문제, 예를 들면 1 차원의 제 7 번째의 기준 또는 제 4 회 발생.
_ 검색 공간 ... _이게 뭐지? 그리고 ppl은 코드를 먼저보고 싶습니다 ... 가지고있는 것을 보여주고 여러분이 기대하는 결과물을 보여주십시오 ... –
여러분은 여러분의 문제에 대해 더 많이 알려주고 여러분이 성취하고자하는 것은 무엇입니까? 문제를 해결하는 방법의 수는 아마 유용하지 않을 것입니다. 왜 숫자가 반복되지 않을 수 있습니까? 이것은 각 단일 매개 변수에 대해서만 또는 서로에 따라도 사실입니까? – Arne
실제로 코드를 보는 것이이 질문을 더 어렵게 만들 것이라고 생각합니다. 즉, 문제 설명에 대한보다 명확한 대답이 필요합니다. –