Browse Source

6.4优化模型

liuqiao 1 year ago
parent
commit
45e704b72c
2 changed files with 146 additions and 1 deletions
  1. 21 0
      src/style/index.css
  2. 125 1
      src/views/index.vue

+ 21 - 0
src/style/index.css

@@ -215,4 +215,25 @@ text-transform: none;
   }
   .sel .el-select{
     width: 100%;
+  }
+  .el-form-item{
+    margin-bottom: 8px;
+  }
+  .border2{
+    border-radius: 10px 10px 10px 10px;
+    border: 1px solid #888888;
+    padding: 10px;
+    position: relative;
+    margin-top: 24px;
+  }
+  .title2{
+    display: inline-block;
+    background-color: #fff;
+    padding: 10px;
+    color: #333;
+    font-weight: 600;
+    position: absolute;
+    top: -20px;
+    left: 20px
+
   }

+ 125 - 1
src/views/index.vue

@@ -488,6 +488,109 @@
               </div>
             </template>
           </el-dialog>
+          <!-- 加点方法 -->
+          <el-dialog v-model="dialog.addfun" align-center :modal="false" :close-on-click-modal="true"
+            :append-to-body="true" draggable :fullscreen="false" :modal-append-to-body="false" modal-class="summary-dlg"
+            :before-close="handleClose" width="480" class="dialog_class sel bgcolor tianjia sel">
+
+            <template #header="{ titleId, titleClass }">
+              <div class="my-header ">
+                <el-image :src="getImgPath('t3.png')" fit="contain"></el-image>
+                <h4 :id="titleId" :class="titleClass">加点方法</h4>
+              </div>
+            </template>
+            <div class="numberinput">
+              <el-form>
+                <el-form-item label="最大样本点数:" :label-width="formLabelWidth1">
+                  <el-input-number v-model="num" :min="1" :max="10" controls-position="right" />
+                </el-form-item>
+                <el-form-item label="加点准则:" :label-width="formLabelWidth1">
+                  <el-select   v-model="addval" :suffix-icon="CaretBottom" placeholder="请选择">
+                          <el-option
+                            v-for="item in addlist"
+                            :key="item.value"
+                            :label="item.label"
+                            :value="item.value">
+                          </el-option>
+                        </el-select>
+                </el-form-item>
+                <el-form-item label="单次迭代新增样本点数:" :label-width="formLabelWidth1">
+                  <el-input-number v-model="num" :min="1" :max="10" controls-position="right" />
+                </el-form-item>
+                <el-form-item label="子优化方法:" :label-width="formLabelWidth1">
+                  <el-input v-model="name" maxlength="18"
+                    oninput="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5]/g,'')" class="w-50 m-2"
+                    placeholder="请输入" />
+                </el-form-item>
+                <el-form-item label="加点准则:" :label-width="formLabelWidth1">
+                  <el-select   v-model="addval1" :suffix-icon="CaretBottom" placeholder="请选择">
+                          <el-option
+                            v-for="item in addlist1"
+                            :key="item.value"
+                            :label="item.label"
+                            :value="item.value">
+                          </el-option>
+                        </el-select>
+                </el-form-item>
+              </el-form>
+              <div class="border2">
+                <div class="title2">GA遗传算法</div>
+                <el-form-item label="种群规模:" :label-width="formLabelWidth1">
+                  <el-input-number v-model="num" :min="1" :max="10" controls-position="right" />
+                </el-form-item>
+                <el-form-item label="最大进化代数:" :label-width="formLabelWidth1">
+                  <el-input-number v-model="num" :min="1" :max="10" controls-position="right" />
+                </el-form-item>
+                <el-form-item label="交叉概率:" :label-width="formLabelWidth1">
+                  <el-input-number v-model="num" :min="1" :max="10" controls-position="right" />
+                </el-form-item>
+                <el-form-item label="变异概率:" :label-width="formLabelWidth1">
+                  <el-input-number v-model="num" :min="1" :max="10" controls-position="right" />
+                </el-form-item>
+                <el-form-item label="交叉算子:" :label-width="formLabelWidth1">
+                  <el-select   v-model="addval2" :suffix-icon="CaretBottom" placeholder="请选择">
+                          <el-option
+                            v-for="item in addlist2"
+                            :key="item.value"
+                            :label="item.label"
+                            :value="item.value">
+                          </el-option>
+                        </el-select>
+                </el-form-item>
+                <el-form-item label="竞赛规模:" :label-width="formLabelWidth1">
+                  <el-input-number v-model="num" :min="1" :max="10" controls-position="right" />
+                </el-form-item>
+                <el-form-item label="保留优选策略:" :label-width="formLabelWidth1">
+                  <el-select   v-model="addval3" :suffix-icon="CaretBottom" placeholder="请选择">
+                          <el-option
+                            v-for="item in addlist3"
+                            :key="item.value"
+                            :label="item.label"
+                            :value="item.value">
+                          </el-option>
+                        </el-select>
+                </el-form-item>
+                <el-form-item label="变异算子选择:" :label-width="formLabelWidth1">
+                  <el-select   v-model="addval4" :suffix-icon="CaretBottom" placeholder="请选择">
+                          <el-option
+                            v-for="item in addlist4"
+                            :key="item.value"
+                            :label="item.label"
+                            :value="item.value">
+                          </el-option>
+                        </el-select>
+                </el-form-item>
+              </div>
+            </div>
+            <template #footer>
+              <div class="dialog-footer">
+                <el-button @click="dialog.addfun = false">取消</el-button>
+                <el-button type="primary" @click="dialog.addfun = false">
+                  确定
+                </el-button>
+              </div>
+            </template>
+          </el-dialog>
         </div>
       </el-main>
 
@@ -550,6 +653,26 @@ let agelist1 = ref([
 let agelist2 = ref([
 { label: '拉丁超立方', value: '拉丁超立方' },
 ])
+let addval=ref("EI + MSP")
+let addlist = ref([
+{ label: 'EI + MSP', value: 'EI + MSP' },
+])
+let addval1=ref("概率相乘法")
+let addlist1 = ref([
+{ label: '概率相乘法', value: '概率相乘法' },
+])
+let addval2=ref("SBX交叉")
+let addlist2 = ref([
+{ label: 'SBX交叉', value: 'SBX交叉' },
+])
+let addval3=ref("最佳保留策略")
+let addlist3 = ref([
+{ label: '最佳保留策略', value: '最佳保留策略' },
+])
+let addval4=ref("倒位变异")
+let addlist4 = ref([
+{ label: '倒位变异', value: '倒位变异' },
+])
 let dialog = ref({
   newdialog: false,
   setdialog: false,
@@ -559,6 +682,7 @@ let dialog = ref({
   parameter:false,
   agency:false,
   enddialog:false,
+  addfun:false,
 })
 let options=ref([
 { label: '升阻比', value: '升阻比' },
@@ -726,7 +850,7 @@ const clickgeometry = (e, index, key) => {
       dialog.value.agency = true;
       break;
       case "Task-1":
-      dialog.value.agency = true;
+      dialog.value.addfun = true;
       break;
       case "Task-2":
       dialog.value.enddialog = true;