Кадровый потенциал

Кадровый потенциал - совокупность способностей всех людей, которые заняты в данной организации и решают определенные задачи ...

Разработка алгоритма и его программной реализациидля пэвм для анализа системы

}

//Проверяет выполнение ограничений на минимальные и максимальные значения по G и по h

bool CheckConstraints(){(G0<Gmin||G0>Gmax)return false;(G1<Gmin||G1>Gmax)return false;(G2<Gmin||G2>Gmax)return false;(G3<Gmin||G3>Gmax)return false;(G4<Gmin||G4>Gmax)return false;(G5<Gmin||G5>Gmax)return false;(G6<Gmin||G6>Gmax)return false;(G7<Gmin||G7>Gmax)return false;(G8<Gmin||G8>Gmax)return false;(G9<Gmin||G9>Gmax)return false;(h0<h3678min||h0>h3678max)return false;(h3<h3678min||h3>h3678max)return false;(h6<h3678min||h6>h3678max)return false;(h7<h3678min||h7>h3678max)return false;(h8<h3678min||h8>h3678max)return false;(h1<h245min||h1>h245max)return false;(h2<h245min||h2>h245max)return false;(h4<h245min||h4>h245max)return false;(h5<h245min||h5>h245max)return false;true;

}

//оптимизируемая величинаKPD(){(G0*h8+G6*h5)/(G0*h0+G3*h1);

}

//Вывести решение (на экран или в файл в зависимости от параметра out)

void PrintSolution(ostream &out){<<" G0="<<G0<<endl;<<" G1="<<G1<<endl;<<" G2="<<G2<<endl;<<" G3="<<G3<<endl;<<" G4="<<G4<<endl;<<" G5="<<G5<<endl;<<" G6="<<G6<<endl;<<" G7="<<G7<<endl;<<" G8="<<G8<<endl;<<" G9="<<G9<<endl;<<" h0="<<h0<<endl;<<" h1="<<h1<<endl;<<" h2="<<h2<<endl;<<" h3="<<h3<<endl;<<" h4="<<h4<<endl;<<" h5="<<h5<<endl;<<" h6="<<h6<<endl;<<" h7="<<h7<<endl;<<" h8="<<h8<<endl;<<"Value of KPD="<<KPD()<<endl;

}

//Инициализация - подготовка внутренних переменных,

//а также заполнение "шапки" при выводе в файл

void Init(){.open(pchFileName);

FileOut<<"Результаты для следующих данных: "<<endl;

FileOut<<" fi2="<<fi2<<" fi3="<<fi3<<" fi4="

<<fi4<<" fi7="<<fi7<<" fi8="<<fi8<<endl;

FileOut<<" Максимизация проводится по параметру ";

if(pfFreeG==&G0){<<"G0";

}else if(pfFreeG==&G1){<<"G1";

}else if(pfFreeG==&G3){<<"G3";

}else if(pfFreeG==&G4){<<"G4";

}else if(pfFreeG==&G7){<<"G7";

}else{(!"Нет такого свободного G.");

}<<", пробегающему отрезок ["<<FreeGmin<<";"<<FreeGmax<<"] с шагом "

<<(FreeGmax-FreeGmin)/N<<"."<<endl;<<" Минимальное G: "<<Gmin<<endl;<<" Максимальное G: "<<Gmax<<endl;<<" Минимальное h для h1, h2, h4, h5: "<<h245min<<endl;<<" Максимальное h для h1, h2, h4, h5: "<<h245max<<endl;<<" Минимальное h для h0, h3, h6, h7, h8: "<<h3678min<<endl;<<" Максимальное h для h0, h3, h6, h7, h8: "<<h3678max<<endl;<<" Начальные данные: "<<endl;_G_h();(FileOut);<<"Вычисление. "<<endl;

}

//Деинициализация - освобождение памяти, закрытие ресурсов

//Тело функции пока пусто, т. к. ничего освобождать не надоDeinit(){

}

//Главная функция - она осуществляет максимизацию

bool Optimize(){KPDmax=-INFTY;MaximizingG;fRes=false;(int i=0;i<=N;++i){

*pfFreeG=FreeGmin+i*(FreeGmax-FreeGmin)/N;_G_h();TheKPD=KPD();<<*pfFreeG<<"\t"<<TheKPD<<"\t";(CheckConstraints()&&(TheKPD>0)){(TheKPD<=1);<<"*";(KPDmax<TheKPD){=TheKPD;

Перейти на страницу: 1 2 3 4